(function(){function n(n){function t(t,r,e,u,i,o){for(;i>=0&&o>i;i+=n){var a=u?u[i]:i;e=r(e,t[a],a,t)}return e}return function(r,e,u,i){e=b(e,i,4);var o=!k(r)&&m.keys(r),a=(o||r).length,c=n>0?0:a-1;return arguments.length<3&&(u=r[o?o[c]:c],c+=n),t(r,e,u,o,c,a)}}function t(n){return function(t,r,e){r=x(r,e);for(var u=O(t),i=n>0?0:u-1;i>=0&&u>i;i+=n)if(r(t[i],i,t))return i;return-1}}function r(n,t,r){return function(e,u,i){var o=0,a=O(e);if("number"==typeof i)n>0?o=i>=0?i:Math.max(i+a,o):a=i>=0?Math.min(i+1,a):i+a+1;else if(r&&i&&a)return i=r(e,u),e[i]===u?i:-1;if(u!==u)return i=t(l.call(e,o,a),m.isNaN),i>=0?i+o:-1;for(i=n>0?o:a-1;i>=0&&a>i;i+=n)if(e[i]===u)return i;return-1}}function e(n,t){var r=I.length,e=n.constructor,u=m.isFunction(e)&&e.prototype||a,i="constructor";for(m.has(n,i)&&!m.contains(t,i)&&t.push(i);r--;)i=I[r],i in n&&n[i]!==u[i]&&!m.contains(t,i)&&t.push(i)}var u=this,i=u._,o=Array.prototype,a=Object.prototype,c=Function.prototype,f=o.push,l=o.slice,s=a.toString,p=a.hasOwnProperty,h=Array.isArray,v=Object.keys,g=c.bind,y=Object.create,d=function(){},m=function(n){return n instanceof m?n:this instanceof m?void(this._wrapped=n):new m(n)};"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=m),exports._=m):u._=m,m.VERSION="1.8.3";var b=function(n,t,r){if(t===void 0)return n;switch(null==r?3:r){case 1:return function(r){return n.call(t,r)};case 2:return function(r,e){return n.call(t,r,e)};case 3:return function(r,e,u){return n.call(t,r,e,u)};case 4:return function(r,e,u,i){return n.call(t,r,e,u,i)}}return function(){return n.apply(t,arguments)}},x=function(n,t,r){return null==n?m.identity:m.isFunction(n)?b(n,t,r):m.isObject(n)?m.matcher(n):m.property(n)};m.iteratee=function(n,t){return x(n,t,1/0)};var _=function(n,t){return function(r){var e=arguments.length;if(2>e||null==r)return r;for(var u=1;e>u;u++)for(var i=arguments[u],o=n(i),a=o.length,c=0;a>c;c++){var f=o[c];t&&r[f]!==void 0||(r[f]=i[f])}return r}},j=function(n){if(!m.isObject(n))return{};if(y)return y(n);d.prototype=n;var t=new d;return d.prototype=null,t},w=function(n){return function(t){return null==t?void 0:t[n]}},A=Math.pow(2,53)-1,O=w("length"),k=function(n){var t=O(n);return"number"==typeof t&&t>=0&&A>=t};m.each=m.forEach=function(n,t,r){t=b(t,r);var e,u;if(k(n))for(e=0,u=n.length;u>e;e++)t(n[e],e,n);else{var i=m.keys(n);for(e=0,u=i.length;u>e;e++)t(n[i[e]],i[e],n)}return n},m.map=m.collect=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=Array(u),o=0;u>o;o++){var a=e?e[o]:o;i[o]=t(n[a],a,n)}return i},m.reduce=m.foldl=m.inject=n(1),m.reduceRight=m.foldr=n(-1),m.find=m.detect=function(n,t,r){var e;return e=k(n)?m.findIndex(n,t,r):m.findKey(n,t,r),e!==void 0&&e!==-1?n[e]:void 0},m.filter=m.select=function(n,t,r){var e=[];return t=x(t,r),m.each(n,function(n,r,u){t(n,r,u)&&e.push(n)}),e},m.reject=function(n,t,r){return m.filter(n,m.negate(x(t)),r)},m.every=m.all=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(!t(n[o],o,n))return!1}return!0},m.some=m.any=function(n,t,r){t=x(t,r);for(var e=!k(n)&&m.keys(n),u=(e||n).length,i=0;u>i;i++){var o=e?e[i]:i;if(t(n[o],o,n))return!0}return!1},m.contains=m.includes=m.include=function(n,t,r,e){return k(n)||(n=m.values(n)),("number"!=typeof r||e)&&(r=0),m.indexOf(n,t,r)>=0},m.invoke=function(n,t){var r=l.call(arguments,2),e=m.isFunction(t);return m.map(n,function(n){var u=e?t:n[t];return null==u?u:u.apply(n,r)})},m.pluck=function(n,t){return m.map(n,m.property(t))},m.where=function(n,t){return m.filter(n,m.matcher(t))},m.findWhere=function(n,t){return m.find(n,m.matcher(t))},m.max=function(n,t,r){var e,u,i=-1/0,o=-1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],e>i&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(u>o||u===-1/0&&i===-1/0)&&(i=n,o=u)});return i},m.min=function(n,t,r){var e,u,i=1/0,o=1/0;if(null==t&&null!=n){n=k(n)?n:m.values(n);for(var a=0,c=n.length;c>a;a++)e=n[a],i>e&&(i=e)}else t=x(t,r),m.each(n,function(n,r,e){u=t(n,r,e),(o>u||1/0===u&&1/0===i)&&(i=n,o=u)});return i},m.shuffle=function(n){for(var t,r=k(n)?n:m.values(n),e=r.length,u=Array(e),i=0;e>i;i++)t=m.random(0,i),t!==i&&(u[i]=u[t]),u[t]=r[i];return u},m.sample=function(n,t,r){return null==t||r?(k(n)||(n=m.values(n)),n[m.random(n.length-1)]):m.shuffle(n).slice(0,Math.max(0,t))},m.sortBy=function(n,t,r){return t=x(t,r),m.pluck(m.map(n,function(n,r,e){return{value:n,index:r,criteria:t(n,r,e)}}).sort(function(n,t){var r=n.criteria,e=t.criteria;if(r!==e){if(r>e||r===void 0)return 1;if(e>r||e===void 0)return-1}return n.index-t.index}),"value")};var F=function(n){return function(t,r,e){var u={};return r=x(r,e),m.each(t,function(e,i){var o=r(e,i,t);n(u,e,o)}),u}};m.groupBy=F(function(n,t,r){m.has(n,r)?n[r].push(t):n[r]=[t]}),m.indexBy=F(function(n,t,r){n[r]=t}),m.countBy=F(function(n,t,r){m.has(n,r)?n[r]++:n[r]=1}),m.toArray=function(n){return n?m.isArray(n)?l.call(n):k(n)?m.map(n,m.identity):m.values(n):[]},m.size=function(n){return null==n?0:k(n)?n.length:m.keys(n).length},m.partition=function(n,t,r){t=x(t,r);var e=[],u=[];return m.each(n,function(n,r,i){(t(n,r,i)?e:u).push(n)}),[e,u]},m.first=m.head=m.take=function(n,t,r){return null==n?void 0:null==t||r?n[0]:m.initial(n,n.length-t)},m.initial=function(n,t,r){return l.call(n,0,Math.max(0,n.length-(null==t||r?1:t)))},m.last=function(n,t,r){return null==n?void 0:null==t||r?n[n.length-1]:m.rest(n,Math.max(0,n.length-t))},m.rest=m.tail=m.drop=function(n,t,r){return l.call(n,null==t||r?1:t)},m.compact=function(n){return m.filter(n,m.identity)};var S=function(n,t,r,e){for(var u=[],i=0,o=e||0,a=O(n);a>o;o++){var c=n[o];if(k(c)&&(m.isArray(c)||m.isArguments(c))){t||(c=S(c,t,r));var f=0,l=c.length;for(u.length+=l;l>f;)u[i++]=c[f++]}else r||(u[i++]=c)}return u};m.flatten=function(n,t){return S(n,t,!1)},m.without=function(n){return m.difference(n,l.call(arguments,1))},m.uniq=m.unique=function(n,t,r,e){m.isBoolean(t)||(e=r,r=t,t=!1),null!=r&&(r=x(r,e));for(var u=[],i=[],o=0,a=O(n);a>o;o++){var c=n[o],f=r?r(c,o,n):c;t?(o&&i===f||u.push(c),i=f):r?m.contains(i,f)||(i.push(f),u.push(c)):m.contains(u,c)||u.push(c)}return u},m.union=function(){return m.uniq(S(arguments,!0,!0))},m.intersection=function(n){for(var t=[],r=arguments.length,e=0,u=O(n);u>e;e++){var i=n[e];if(!m.contains(t,i)){for(var o=1;r>o&&m.contains(arguments[o],i);o++);o===r&&t.push(i)}}return t},m.difference=function(n){var t=S(arguments,!0,!0,1);return m.filter(n,function(n){return!m.contains(t,n)})},m.zip=function(){return m.unzip(arguments)},m.unzip=function(n){for(var t=n&&m.max(n,O).length||0,r=Array(t),e=0;t>e;e++)r[e]=m.pluck(n,e);return r},m.object=function(n,t){for(var r={},e=0,u=O(n);u>e;e++)t?r[n[e]]=t[e]:r[n[e][0]]=n[e][1];return r},m.findIndex=t(1),m.findLastIndex=t(-1),m.sortedIndex=function(n,t,r,e){r=x(r,e,1);for(var u=r(t),i=0,o=O(n);o>i;){var a=Math.floor((i+o)/2);r(n[a])i;i++,n+=r)u[i]=n;return u};var E=function(n,t,r,e,u){if(!(e instanceof t))return n.apply(r,u);var i=j(n.prototype),o=n.apply(i,u);return m.isObject(o)?o:i};m.bind=function(n,t){if(g&&n.bind===g)return g.apply(n,l.call(arguments,1));if(!m.isFunction(n))throw new TypeError("Bind must be called on a function");var r=l.call(arguments,2),e=function(){return E(n,e,t,this,r.concat(l.call(arguments)))};return e},m.partial=function(n){var t=l.call(arguments,1),r=function(){for(var e=0,u=t.length,i=Array(u),o=0;u>o;o++)i[o]=t[o]===m?arguments[e++]:t[o];for(;e=e)throw new Error("bindAll must be passed function names");for(t=1;e>t;t++)r=arguments[t],n[r]=m.bind(n[r],n);return n},m.memoize=function(n,t){var r=function(e){var u=r.cache,i=""+(t?t.apply(this,arguments):e);return m.has(u,i)||(u[i]=n.apply(this,arguments)),u[i]};return r.cache={},r},m.delay=function(n,t){var r=l.call(arguments,2);return setTimeout(function(){return n.apply(null,r)},t)},m.defer=m.partial(m.delay,m,1),m.throttle=function(n,t,r){var e,u,i,o=null,a=0;r||(r={});var c=function(){a=r.leading===!1?0:m.now(),o=null,i=n.apply(e,u),o||(e=u=null)};return function(){var f=m.now();a||r.leading!==!1||(a=f);var l=t-(f-a);return e=this,u=arguments,0>=l||l>t?(o&&(clearTimeout(o),o=null),a=f,i=n.apply(e,u),o||(e=u=null)):o||r.trailing===!1||(o=setTimeout(c,l)),i}},m.debounce=function(n,t,r){var e,u,i,o,a,c=function(){var f=m.now()-o;t>f&&f>=0?e=setTimeout(c,t-f):(e=null,r||(a=n.apply(i,u),e||(i=u=null)))};return function(){i=this,u=arguments,o=m.now();var f=r&&!e;return e||(e=setTimeout(c,t)),f&&(a=n.apply(i,u),i=u=null),a}},m.wrap=function(n,t){return m.partial(t,n)},m.negate=function(n){return function(){return!n.apply(this,arguments)}},m.compose=function(){var n=arguments,t=n.length-1;return function(){for(var r=t,e=n[t].apply(this,arguments);r--;)e=n[r].call(this,e);return e}},m.after=function(n,t){return function(){return--n<1?t.apply(this,arguments):void 0}},m.before=function(n,t){var r;return function(){return--n>0&&(r=t.apply(this,arguments)),1>=n&&(t=null),r}},m.once=m.partial(m.before,2);var M=!{toString:null}.propertyIsEnumerable("toString"),I=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"];m.keys=function(n){if(!m.isObject(n))return[];if(v)return v(n);var t=[];for(var r in n)m.has(n,r)&&t.push(r);return M&&e(n,t),t},m.allKeys=function(n){if(!m.isObject(n))return[];var t=[];for(var r in n)t.push(r);return M&&e(n,t),t},m.values=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=n[t[u]];return e},m.mapObject=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=u.length,o={},a=0;i>a;a++)e=u[a],o[e]=t(n[e],e,n);return o},m.pairs=function(n){for(var t=m.keys(n),r=t.length,e=Array(r),u=0;r>u;u++)e[u]=[t[u],n[t[u]]];return e},m.invert=function(n){for(var t={},r=m.keys(n),e=0,u=r.length;u>e;e++)t[n[r[e]]]=r[e];return t},m.functions=m.methods=function(n){var t=[];for(var r in n)m.isFunction(n[r])&&t.push(r);return t.sort()},m.extend=_(m.allKeys),m.extendOwn=m.assign=_(m.keys),m.findKey=function(n,t,r){t=x(t,r);for(var e,u=m.keys(n),i=0,o=u.length;o>i;i++)if(e=u[i],t(n[e],e,n))return e},m.pick=function(n,t,r){var e,u,i={},o=n;if(null==o)return i;m.isFunction(t)?(u=m.allKeys(o),e=b(t,r)):(u=S(arguments,!1,!1,1),e=function(n,t,r){return t in r},o=Object(o));for(var a=0,c=u.length;c>a;a++){var f=u[a],l=o[f];e(l,f,o)&&(i[f]=l)}return i},m.omit=function(n,t,r){if(m.isFunction(t))t=m.negate(t);else{var e=m.map(S(arguments,!1,!1,1),String);t=function(n,t){return!m.contains(e,t)}}return m.pick(n,t,r)},m.defaults=_(m.allKeys,!0),m.create=function(n,t){var r=j(n);return t&&m.extendOwn(r,t),r},m.clone=function(n){return m.isObject(n)?m.isArray(n)?n.slice():m.extend({},n):n},m.tap=function(n,t){return t(n),n},m.isMatch=function(n,t){var r=m.keys(t),e=r.length;if(null==n)return!e;for(var u=Object(n),i=0;e>i;i++){var o=r[i];if(t[o]!==u[o]||!(o in u))return!1}return!0};var N=function(n,t,r,e){if(n===t)return 0!==n||1/n===1/t;if(null==n||null==t)return n===t;n instanceof m&&(n=n._wrapped),t instanceof m&&(t=t._wrapped);var u=s.call(n);if(u!==s.call(t))return!1;switch(u){case"[object RegExp]":case"[object String]":return""+n==""+t;case"[object Number]":return+n!==+n?+t!==+t:0===+n?1/+n===1/t:+n===+t;case"[object Date]":case"[object Boolean]":return+n===+t}var i="[object Array]"===u;if(!i){if("object"!=typeof n||"object"!=typeof t)return!1;var o=n.constructor,a=t.constructor;if(o!==a&&!(m.isFunction(o)&&o instanceof o&&m.isFunction(a)&&a instanceof a)&&"constructor"in n&&"constructor"in t)return!1}r=r||[],e=e||[];for(var c=r.length;c--;)if(r[c]===n)return e[c]===t;if(r.push(n),e.push(t),i){if(c=n.length,c!==t.length)return!1;for(;c--;)if(!N(n[c],t[c],r,e))return!1}else{var f,l=m.keys(n);if(c=l.length,m.keys(t).length!==c)return!1;for(;c--;)if(f=l[c],!m.has(t,f)||!N(n[f],t[f],r,e))return!1}return r.pop(),e.pop(),!0};m.isEqual=function(n,t){return N(n,t)},m.isEmpty=function(n){return null==n?!0:k(n)&&(m.isArray(n)||m.isString(n)||m.isArguments(n))?0===n.length:0===m.keys(n).length},m.isElement=function(n){return!(!n||1!==n.nodeType)},m.isArray=h||function(n){return"[object Array]"===s.call(n)},m.isObject=function(n){var t=typeof n;return"function"===t||"object"===t&&!!n},m.each(["Arguments","Function","String","Number","Date","RegExp","Error"],function(n){m["is"+n]=function(t){return s.call(t)==="[object "+n+"]"}}),m.isArguments(arguments)||(m.isArguments=function(n){return m.has(n,"callee")}),"function"!=typeof/./&&"object"!=typeof Int8Array&&(m.isFunction=function(n){return"function"==typeof n||!1}),m.isFinite=function(n){return isFinite(n)&&!isNaN(parseFloat(n))},m.isNaN=function(n){return m.isNumber(n)&&n!==+n},m.isBoolean=function(n){return n===!0||n===!1||"[object Boolean]"===s.call(n)},m.isNull=function(n){return null===n},m.isUndefined=function(n){return n===void 0},m.has=function(n,t){return null!=n&&p.call(n,t)},m.noConflict=function(){return u._=i,this},m.identity=function(n){return n},m.constant=function(n){return function(){return n}},m.noop=function(){},m.property=w,m.propertyOf=function(n){return null==n?function(){}:function(t){return n[t]}},m.matcher=m.matches=function(n){return n=m.extendOwn({},n),function(t){return m.isMatch(t,n)}},m.times=function(n,t,r){var e=Array(Math.max(0,n));t=b(t,r,1);for(var u=0;n>u;u++)e[u]=t(u);return e},m.random=function(n,t){return null==t&&(t=n,n=0),n+Math.floor(Math.random()*(t-n+1))},m.now=Date.now||function(){return(new Date).getTime()};var B={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},T=m.invert(B),R=function(n){var t=function(t){return n[t]},r="(?:"+m.keys(n).join("|")+")",e=RegExp(r),u=RegExp(r,"g");return function(n){return n=null==n?"":""+n,e.test(n)?n.replace(u,t):n}};m.escape=R(B),m.unescape=R(T),m.result=function(n,t,r){var e=null==n?void 0:n[t];return e===void 0&&(e=r),m.isFunction(e)?e.call(n):e};var q=0;m.uniqueId=function(n){var t=++q+"";return n?n+t:t},m.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var K=/(.)^/,z={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},D=/\\|'|\r|\n|\u2028|\u2029/g,L=function(n){return"\\"+z[n]};m.template=function(n,t,r){!t&&r&&(t=r),t=m.defaults({},t,m.templateSettings);var e=RegExp([(t.escape||K).source,(t.interpolate||K).source,(t.evaluate||K).source].join("|")+"|$","g"),u=0,i="__p+='";n.replace(e,function(t,r,e,o,a){return i+=n.slice(u,a).replace(D,L),u=a+t.length,r?i+="'+\n((__t=("+r+"))==null?'':_.escape(__t))+\n'":e?i+="'+\n((__t=("+e+"))==null?'':__t)+\n'":o&&(i+="';\n"+o+"\n__p+='"),t}),i+="';\n",t.variable||(i="with(obj||{}){\n"+i+"}\n"),i="var __t,__p='',__j=Array.prototype.join,"+"print=function(){__p+=__j.call(arguments,'');};\n"+i+"return __p;\n";try{var o=new Function(t.variable||"obj","_",i)}catch(a){throw a.source=i,a}var c=function(n){return o.call(this,n,m)},f=t.variable||"obj";return c.source="function("+f+"){\n"+i+"}",c},m.chain=function(n){var t=m(n);return t._chain=!0,t};var P=function(n,t){return n._chain?m(t).chain():t};m.mixin=function(n){m.each(m.functions(n),function(t){var r=m[t]=n[t];m.prototype[t]=function(){var n=[this._wrapped];return f.apply(n,arguments),P(this,r.apply(m,n))}})},m.mixin(m),m.each(["pop","push","reverse","shift","sort","splice","unshift"],function(n){var t=o[n];m.prototype[n]=function(){var r=this._wrapped;return t.apply(r,arguments),"shift"!==n&&"splice"!==n||0!==r.length||delete r[0],P(this,r)}}),m.each(["concat","join","slice"],function(n){var t=o[n];m.prototype[n]=function(){return P(this,t.apply(this._wrapped,arguments))}}),m.prototype.value=function(){return this._wrapped},m.prototype.valueOf=m.prototype.toJSON=m.prototype.value,m.prototype.toString=function(){return""+this._wrapped},"function"==typeof define&&define.amd&&define("underscore",[],function(){return m})}).call(this); (function(t){var e=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global;if(typeof define==="function"&&define.amd){define(["underscore","jquery","exports"],function(i,r,n){e.Backbone=t(e,n,i,r)})}else if(typeof exports!=="undefined"){var i=require("underscore"),r;try{r=require("jquery")}catch(n){}t(e,exports,i,r)}else{e.Backbone=t(e,{},e._,e.jQuery||e.Zepto||e.ender||e.$)}})(function(t,e,i,r){var n=t.Backbone;var s=Array.prototype.slice;e.VERSION="1.3.3";e.$=r;e.noConflict=function(){t.Backbone=n;return this};e.emulateHTTP=false;e.emulateJSON=false;var a=function(t,e,r){switch(t){case 1:return function(){return i[e](this[r])};case 2:return function(t){return i[e](this[r],t)};case 3:return function(t,n){return i[e](this[r],o(t,this),n)};case 4:return function(t,n,s){return i[e](this[r],o(t,this),n,s)};default:return function(){var t=s.call(arguments);t.unshift(this[r]);return i[e].apply(i,t)}}};var h=function(t,e,r){i.each(e,function(e,n){if(i[n])t.prototype[n]=a(e,n,r)})};var o=function(t,e){if(i.isFunction(t))return t;if(i.isObject(t)&&!e._isModel(t))return l(t);if(i.isString(t))return function(e){return e.get(t)};return t};var l=function(t){var e=i.matches(t);return function(t){return e(t.attributes)}};var u=e.Events={};var c=/\s+/;var f=function(t,e,r,n,s){var a=0,h;if(r&&typeof r==="object"){if(n!==void 0&&"context"in s&&s.context===void 0)s.context=n;for(h=i.keys(r);athis.length)n=this.length;if(n<0)n+=this.length+1;var s=[];var a=[];var h=[];var o=[];var l={};var u=e.add;var c=e.merge;var f=e.remove;var d=false;var v=this.comparator&&n==null&&e.sort!==false;var g=i.isString(this.comparator)?this.comparator:null;var p,m;for(m=0;m7);this._useHashChange=this._wantsHashChange&&this._hasHashChange;this._wantsPushState=!!this.options.pushState;this._hasPushState=!!(this.history&&this.history.pushState);this._usePushState=this._wantsPushState&&this._hasPushState;this.fragment=this.getFragment();this.root=("/"+this.root+"/").replace(O,"/");if(this._wantsHashChange&&this._wantsPushState){if(!this._hasPushState&&!this.atRoot()){var e=this.root.slice(0,-1)||"/";this.location.replace(e+"#"+this.getPath());return true}else if(this._hasPushState&&this.atRoot()){this.navigate(this.getHash(),{replace:true})}}if(!this._hasHashChange&&this._wantsHashChange&&!this._usePushState){this.iframe=document.createElement("iframe");this.iframe.src="javascript:0";this.iframe.style.display="none";this.iframe.tabIndex=-1;var r=document.body;var n=r.insertBefore(this.iframe,r.firstChild).contentWindow;n.document.open();n.document.close();n.location.hash="#"+this.fragment}var s=window.addEventListener||function(t,e){return attachEvent("on"+t,e)};if(this._usePushState){s("popstate",this.checkUrl,false)}else if(this._useHashChange&&!this.iframe){s("hashchange",this.checkUrl,false)}else if(this._wantsHashChange){this._checkUrlInterval=setInterval(this.checkUrl,this.interval)}if(!this.options.silent)return this.loadUrl()},stop:function(){var t=window.removeEventListener||function(t,e){return detachEvent("on"+t,e)};if(this._usePushState){t("popstate",this.checkUrl,false)}else if(this._useHashChange&&!this.iframe){t("hashchange",this.checkUrl,false)}if(this.iframe){document.body.removeChild(this.iframe);this.iframe=null}if(this._checkUrlInterval)clearInterval(this._checkUrlInterval);N.started=false},route:function(t,e){this.handlers.unshift({route:t,callback:e})},checkUrl:function(t){var e=this.getFragment();if(e===this.fragment&&this.iframe){e=this.getHash(this.iframe.contentWindow)}if(e===this.fragment)return false;if(this.iframe)this.navigate(e);this.loadUrl()},loadUrl:function(t){if(!this.matchRoot())return false;t=this.fragment=this.getFragment(t);return i.some(this.handlers,function(e){if(e.route.test(t)){e.callback(t);return true}})},navigate:function(t,e){if(!N.started)return false;if(!e||e===true)e={trigger:!!e};t=this.getFragment(t||"");var i=this.root;if(t===""||t.charAt(0)==="?"){i=i.slice(0,-1)||"/"}var r=i+t;t=this.decodeFragment(t.replace(U,""));if(this.fragment===t)return;this.fragment=t;if(this._usePushState){this.history[e.replace?"replaceState":"pushState"]({},document.title,r)}else if(this._wantsHashChange){this._updateHash(this.location,t,e.replace);if(this.iframe&&t!==this.getHash(this.iframe.contentWindow)){var n=this.iframe.contentWindow;if(!e.replace){n.document.open();n.document.close()}this._updateHash(n.location,t,e.replace)}}else{return this.location.assign(r)}if(e.trigger)return this.loadUrl(t)},_updateHash:function(t,e,i){if(i){var r=t.href.replace(/(javascript:|#).*$/,"");t.replace(r+"#"+e)}else{t.hash="#"+e}}});e.history=new N;var q=function(t,e){var r=this;var n;if(t&&i.has(t,"constructor")){n=t.constructor}else{n=function(){return r.apply(this,arguments)}}i.extend(n,r,e);n.prototype=i.create(r.prototype,t);n.prototype.constructor=n;n.__super__=r.prototype;return n};y.extend=x.extend=$.extend=k.extend=N.extend=q;var F=function(){throw new Error('A "url" property or function must be specified')};var B=function(t,e){var i=e.error;e.error=function(r){if(i)i.call(e.context,t,r,e);t.trigger("error",t,r,e)}};return e}); !function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a(jQuery)}(function(a){function b(b,d){var e,f,g,h=b.nodeName.toLowerCase();return"area"===h?(e=b.parentNode,f=e.name,!(!b.href||!f||"map"!==e.nodeName.toLowerCase())&&(g=a("img[usemap='#"+f+"']")[0],!!g&&c(g))):(/^(input|select|textarea|button|object)$/.test(h)?!b.disabled:"a"===h?b.href||d:d)&&c(b)}function c(b){return a.expr.filters.visible(b)&&!a(b).parents().addBack().filter(function(){return"hidden"===a.css(this,"visibility")}).length}a.ui=a.ui||{},a.extend(a.ui,{version:"1.11.4",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),a.fn.extend({scrollParent:function(b){var c=this.css("position"),d="absolute"===c,e=b?/(auto|scroll|hidden)/:/(auto|scroll)/,f=this.parents().filter(function(){var b=a(this);return(!d||"static"!==b.css("position"))&&e.test(b.css("overflow")+b.css("overflow-y")+b.css("overflow-x"))}).eq(0);return"fixed"!==c&&f.length?f:a(this[0].ownerDocument||document)},uniqueId:function(){var a=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++a)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&a(this).removeAttr("id")})}}),a.extend(a.expr[":"],{data:a.expr.createPseudo?a.expr.createPseudo(function(b){return function(c){return!!a.data(c,b)}}):function(b,c,d){return!!a.data(b,d[3])},focusable:function(c){return b(c,!isNaN(a.attr(c,"tabindex")))},tabbable:function(c){var d=a.attr(c,"tabindex"),e=isNaN(d);return(e||d>=0)&&b(c,!e)}}),a("").outerWidth(1).jquery||a.each(["Width","Height"],function(b,c){function d(b,c,d,f){return a.each(e,function(){c-=parseFloat(a.css(b,"padding"+this))||0,d&&(c-=parseFloat(a.css(b,"border"+this+"Width"))||0),f&&(c-=parseFloat(a.css(b,"margin"+this))||0)}),c}var e="Width"===c?["Left","Right"]:["Top","Bottom"],f=c.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+c]=function(b){return void 0===b?g["inner"+c].call(this):this.each(function(){a(this).css(f,d(this,b)+"px")})},a.fn["outer"+c]=function(b,e){return"number"!=typeof b?g["outer"+c].call(this,b):this.each(function(){a(this).css(f,d(this,b,!0,e)+"px")})}}),a.fn.addBack||(a.fn.addBack=function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}),a("").data("a-b","a").removeData("a-b").data("a-b")&&(a.fn.removeData=function(b){return function(c){return arguments.length?b.call(this,a.camelCase(c)):b.call(this)}}(a.fn.removeData)),a.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),a.fn.extend({focus:function(b){return function(c,d){return"number"==typeof c?this.each(function(){var b=this;setTimeout(function(){a(b).focus(),d&&d.call(b)},c)}):b.apply(this,arguments)}}(a.fn.focus),disableSelection:function(){var a="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(a+".ui-disableSelection",function(a){a.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(b){if(void 0!==b)return this.css("zIndex",b);if(this.length)for(var c,d,e=a(this[0]);e.length&&e[0]!==document;){if(c=e.css("position"),("absolute"===c||"relative"===c||"fixed"===c)&&(d=parseInt(e.css("zIndex"),10),!isNaN(d)&&0!==d))return d;e=e.parent()}return 0}}),a.ui.plugin={add:function(b,c,d){var e,f=a.ui[b].prototype;for(e in d)f.plugins[e]=f.plugins[e]||[],f.plugins[e].push([c,d[e]])},call:function(a,b,c,d){var e,f=a.plugins[b];if(f&&(d||a.element[0].parentNode&&11!==a.element[0].parentNode.nodeType))for(e=0;e",options:{disabled:!1,create:null},_createWidget:function(c,d){d=a(d||this.defaultElement||this)[0],this.element=a(d),this.uuid=b++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=a(),this.hoverable=a(),this.focusable=a(),d!==this&&(a.data(d,this.widgetFullName,this),this._on(!0,this.element,{remove:function(a){a.target===d&&this.destroy()}}),this.document=a(d.style?d.ownerDocument:d.document||d),this.window=a(this.document[0].defaultView||this.document[0].parentWindow)),this.options=a.widget.extend({},this.options,this._getCreateOptions(),c),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:a.noop,_getCreateEventData:a.noop,_create:a.noop,_init:a.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(a.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:a.noop,widget:function(){return this.element},option:function(b,c){var d,e,f,g=b;if(0===arguments.length)return a.widget.extend({},this.options);if("string"==typeof b)if(g={},d=b.split("."),b=d.shift(),d.length){for(e=g[b]=a.widget.extend({},this.options[b]),f=0;f=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})}); !function(a){"function"==typeof define&&define.amd?define(["jquery","./core","./mouse","./widget"],a):a(jQuery)}(function(a){return a.widget("ui.resizable",a.ui.mouse,{version:"1.11.4",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(a){return parseInt(a,10)||0},_isNumber:function(a){return!isNaN(parseInt(a,10))},_hasScroll:function(b,c){if("hidden"===a(b).css("overflow"))return!1;var d=c&&"left"===c?"scrollLeft":"scrollTop",e=!1;return b[d]>0||(b[d]=1,e=b[d]>0,b[d]=0,e)},_create:function(){var b,c,d,e,f,g=this,h=this.options;if(this.element.addClass("ui-resizable"),a.extend(this,{_aspectRatio:!!h.aspectRatio,aspectRatio:h.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:h.helper||h.ghost||h.animate?h.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(a("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=h.handles||(a(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=a(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),b=this.handles.split(","),this.handles={},c=0;c"),e.css({zIndex:h.zIndex}),"se"===d&&e.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[d]=".ui-resizable-"+d,this.element.append(e);this._renderAxis=function(b){var c,d,e,f;b=b||this.element;for(c in this.handles)this.handles[c].constructor===String?this.handles[c]=this.element.children(this.handles[c]).first().show():(this.handles[c].jquery||this.handles[c].nodeType)&&(this.handles[c]=a(this.handles[c]),this._on(this.handles[c],{mousedown:g._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(d=a(this.handles[c],this.element),f=/sw|ne|nw|se|n|s/.test(c)?d.outerHeight():d.outerWidth(),e=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join(""),b.css(e,f),this._proportionallyResize()),this._handles=this._handles.add(this.handles[c])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.mouseover(function(){g.resizing||(this.className&&(e=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),g.axis=e&&e[1]?e[1]:"se")}),h.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").mouseenter(function(){h.disabled||(a(this).removeClass("ui-resizable-autohide"),g._handles.show())}).mouseleave(function(){h.disabled||g.resizing||(a(this).addClass("ui-resizable-autohide"),g._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var b,c=function(b){a(b).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(c(this.element),b=this.element,this.originalElement.css({position:b.css("position"),width:b.outerWidth(),height:b.outerHeight(),top:b.css("top"),left:b.css("left")}).insertAfter(b),b.remove()),this.originalElement.css("resize",this.originalResizeStyle),c(this.originalElement),this},_mouseCapture:function(b){var c,d,e=!1;for(c in this.handles)d=a(this.handles[c])[0],(d===b.target||a.contains(d,b.target))&&(e=!0);return!this.options.disabled&&e},_mouseStart:function(b){var c,d,e,f=this.options,g=this.element;return this.resizing=!0,this._renderProxy(),c=this._num(this.helper.css("left")),d=this._num(this.helper.css("top")),f.containment&&(c+=a(f.containment).scrollLeft()||0,d+=a(f.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:c,top:d},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:g.width(),height:g.height()},this.originalSize=this._helper?{width:g.outerWidth(),height:g.outerHeight()}:{width:g.width(),height:g.height()},this.sizeDiff={width:g.outerWidth()-g.width(),height:g.outerHeight()-g.height()},this.originalPosition={left:c,top:d},this.originalMousePosition={left:b.pageX,top:b.pageY},this.aspectRatio="number"==typeof f.aspectRatio?f.aspectRatio:this.originalSize.width/this.originalSize.height||1,e=a(".ui-resizable-"+this.axis).css("cursor"),a("body").css("cursor","auto"===e?this.axis+"-resize":e),g.addClass("ui-resizable-resizing"),this._propagate("start",b),!0},_mouseDrag:function(b){var c,d,e=this.originalMousePosition,f=this.axis,g=b.pageX-e.left||0,h=b.pageY-e.top||0,i=this._change[f];return this._updatePrevProperties(),!!i&&(c=i.apply(this,[b,g,h]),this._updateVirtualBoundaries(b.shiftKey),(this._aspectRatio||b.shiftKey)&&(c=this._updateRatio(c,b)),c=this._respectSize(c,b),this._updateCache(c),this._propagate("resize",b),d=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),a.isEmptyObject(d)||(this._updatePrevProperties(),this._trigger("resize",b,this.ui()),this._applyChanges()),!1)},_mouseStop:function(b){this.resizing=!1;var c,d,e,f,g,h,i,j=this.options,k=this;return this._helper&&(c=this._proportionallyResizeElements,d=c.length&&/textarea/i.test(c[0].nodeName),e=d&&this._hasScroll(c[0],"left")?0:k.sizeDiff.height,f=d?0:k.sizeDiff.width,g={width:k.helper.width()-f,height:k.helper.height()-e},h=parseInt(k.element.css("left"),10)+(k.position.left-k.originalPosition.left)||null,i=parseInt(k.element.css("top"),10)+(k.position.top-k.originalPosition.top)||null,j.animate||this.element.css(a.extend(g,{top:i,left:h})),k.helper.height(k.size.height),k.helper.width(k.size.width),this._helper&&!j.animate&&this._proportionallyResize()),a("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",b),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var a={};return this.position.top!==this.prevPosition.top&&(a.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(a.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(a.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(a.height=this.size.height+"px"),this.helper.css(a),a},_updateVirtualBoundaries:function(a){var b,c,d,e,f,g=this.options;f={minWidth:this._isNumber(g.minWidth)?g.minWidth:0,maxWidth:this._isNumber(g.maxWidth)?g.maxWidth:1/0,minHeight:this._isNumber(g.minHeight)?g.minHeight:0,maxHeight:this._isNumber(g.maxHeight)?g.maxHeight:1/0},(this._aspectRatio||a)&&(b=f.minHeight*this.aspectRatio,d=f.minWidth/this.aspectRatio,c=f.maxHeight*this.aspectRatio,e=f.maxWidth/this.aspectRatio,b>f.minWidth&&(f.minWidth=b),d>f.minHeight&&(f.minHeight=d),ca.width,g=this._isNumber(a.height)&&b.minHeight&&b.minHeight>a.height,h=this.originalPosition.left+this.originalSize.width,i=this.position.top+this.size.height,j=/sw|nw|w/.test(c),k=/nw|ne|n/.test(c);return f&&(a.width=b.minWidth),g&&(a.height=b.minHeight),d&&(a.width=b.maxWidth),e&&(a.height=b.maxHeight),f&&j&&(a.left=h-b.minWidth),d&&j&&(a.left=h-b.maxWidth),g&&k&&(a.top=i-b.minHeight),e&&k&&(a.top=i-b.maxHeight),a.width||a.height||a.left||!a.top?a.width||a.height||a.top||!a.left||(a.left=null):a.top=null,a},_getPaddingPlusBorderDimensions:function(a){for(var b=0,c=[],d=[a.css("borderTopWidth"),a.css("borderRightWidth"),a.css("borderBottomWidth"),a.css("borderLeftWidth")],e=[a.css("paddingTop"),a.css("paddingRight"),a.css("paddingBottom"),a.css("paddingLeft")];b<4;b++)c[b]=parseInt(d[b],10)||0,c[b]+=parseInt(e[b],10)||0;return{height:c[0]+c[2],width:c[1]+c[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var a,b=0,c=this.helper||this.element;b"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++c.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(a,b){return{width:this.originalSize.width+b}},w:function(a,b){var c=this.originalSize,d=this.originalPosition;return{left:d.left+b,width:c.width-b}},n:function(a,b,c){var d=this.originalSize,e=this.originalPosition;return{top:e.top+c,height:d.height-c}},s:function(a,b,c){return{height:this.originalSize.height+c}},se:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},sw:function(b,c,d){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,c,d]))},ne:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,c,d]))},nw:function(b,c,d){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,c,d]))}},_propagate:function(b,c){a.ui.plugin.call(this,b,[c,this.ui()]),"resize"!==b&&this._trigger(b,c,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),a.ui.plugin.add("resizable","animate",{stop:function(b){var c=a(this).resizable("instance"),d=c.options,e=c._proportionallyResizeElements,f=e.length&&/textarea/i.test(e[0].nodeName),g=f&&c._hasScroll(e[0],"left")?0:c.sizeDiff.height,h=f?0:c.sizeDiff.width,i={width:c.size.width-h,height:c.size.height-g},j=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null,k=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;c.element.animate(a.extend(i,k&&j?{top:k,left:j}:{}),{duration:d.animateDuration,easing:d.animateEasing,step:function(){var d={width:parseInt(c.element.css("width"),10),height:parseInt(c.element.css("height"),10),top:parseInt(c.element.css("top"),10),left:parseInt(c.element.css("left"),10)};e&&e.length&&a(e[0]).css({width:d.width,height:d.height}),c._updateCache(d),c._propagate("resize",b)}})}}),a.ui.plugin.add("resizable","containment",{start:function(){var b,c,d,e,f,g,h,i=a(this).resizable("instance"),j=i.options,k=i.element,l=j.containment,m=l instanceof a?l.get(0):/parent/.test(l)?k.parent().get(0):l;m&&(i.containerElement=a(m),/document/.test(l)||l===document?(i.containerOffset={left:0,top:0},i.containerPosition={left:0,top:0},i.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight}):(b=a(m),c=[],a(["Top","Right","Left","Bottom"]).each(function(a,d){c[a]=i._num(b.css("padding"+d))}),i.containerOffset=b.offset(),i.containerPosition=b.position(),i.containerSize={height:b.innerHeight()-c[3],width:b.innerWidth()-c[1]},d=i.containerOffset,e=i.containerSize.height,f=i.containerSize.width,g=i._hasScroll(m,"left")?m.scrollWidth:f,h=i._hasScroll(m)?m.scrollHeight:e,i.parentData={element:m,left:d.left,top:d.top,width:g,height:h}))},resize:function(b){var c,d,e,f,g=a(this).resizable("instance"),h=g.options,i=g.containerOffset,j=g.position,k=g._aspectRatio||b.shiftKey,l={top:0,left:0},m=g.containerElement,n=!0;m[0]!==document&&/static/.test(m.css("position"))&&(l=i),j.left<(g._helper?i.left:0)&&(g.size.width=g.size.width+(g._helper?g.position.left-i.left:g.position.left-l.left),k&&(g.size.height=g.size.width/g.aspectRatio,n=!1),g.position.left=h.helper?i.left:0),j.top<(g._helper?i.top:0)&&(g.size.height=g.size.height+(g._helper?g.position.top-i.top:g.position.top),k&&(g.size.width=g.size.height*g.aspectRatio,n=!1),g.position.top=g._helper?i.top:0),e=g.containerElement.get(0)===g.element.parent().get(0),f=/relative|absolute/.test(g.containerElement.css("position")),e&&f?(g.offset.left=g.parentData.left+g.position.left,g.offset.top=g.parentData.top+g.position.top):(g.offset.left=g.element.offset().left,g.offset.top=g.element.offset().top),c=Math.abs(g.sizeDiff.width+(g._helper?g.offset.left-l.left:g.offset.left-i.left)),d=Math.abs(g.sizeDiff.height+(g._helper?g.offset.top-l.top:g.offset.top-i.top)),c+g.size.width>=g.parentData.width&&(g.size.width=g.parentData.width-c,k&&(g.size.height=g.size.width/g.aspectRatio,n=!1)),d+g.size.height>=g.parentData.height&&(g.size.height=g.parentData.height-d,k&&(g.size.width=g.size.height*g.aspectRatio,n=!1)),n||(g.position.left=g.prevPosition.left,g.position.top=g.prevPosition.top,g.size.width=g.prevSize.width,g.size.height=g.prevSize.height)},stop:function(){var b=a(this).resizable("instance"),c=b.options,d=b.containerOffset,e=b.containerPosition,f=b.containerElement,g=a(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width,j=g.outerHeight()-b.sizeDiff.height;b._helper&&!c.animate&&/relative/.test(f.css("position"))&&a(this).css({left:h.left-e.left-d.left,width:i,height:j}),b._helper&&!c.animate&&/static/.test(f.css("position"))&&a(this).css({left:h.left-e.left-d.left,width:i,height:j})}}),a.ui.plugin.add("resizable","alsoResize",{start:function(){var b=a(this).resizable("instance"),c=b.options;a(c.alsoResize).each(function(){var b=a(this);b.data("ui-resizable-alsoresize",{width:parseInt(b.width(),10),height:parseInt(b.height(),10),left:parseInt(b.css("left"),10),top:parseInt(b.css("top"),10)})})},resize:function(b,c){var d=a(this).resizable("instance"),e=d.options,f=d.originalSize,g=d.originalPosition,h={height:d.size.height-f.height||0,width:d.size.width-f.width||0,top:d.position.top-g.top||0,left:d.position.left-g.left||0};a(e.alsoResize).each(function(){var b=a(this),d=a(this).data("ui-resizable-alsoresize"),e={},f=b.parents(c.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(f,function(a,b){var c=(d[b]||0)+(h[b]||0);c&&c>=0&&(e[b]=c||null)}),b.css(e)})},stop:function(){a(this).removeData("resizable-alsoresize")}}),a.ui.plugin.add("resizable","ghost",{start:function(){var b=a(this).resizable("instance"),c=b.options,d=b.size;b.ghost=b.originalElement.clone(),b.ghost.css({opacity:.25,display:"block",position:"relative",height:d.height,width:d.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof c.ghost?c.ghost:""),b.ghost.appendTo(b.helper)},resize:function(){var b=a(this).resizable("instance");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=a(this).resizable("instance");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}}),a.ui.plugin.add("resizable","grid",{resize:function(){var b,c=a(this).resizable("instance"),d=c.options,e=c.size,f=c.originalSize,g=c.originalPosition,h=c.axis,i="number"==typeof d.grid?[d.grid,d.grid]:d.grid,j=i[0]||1,k=i[1]||1,l=Math.round((e.width-f.width)/j)*j,m=Math.round((e.height-f.height)/k)*k,n=f.width+l,o=f.height+m,p=d.maxWidth&&d.maxWidthn,s=d.minHeight&&d.minHeight>o;d.grid=i,r&&(n+=j),s&&(o+=k),p&&(n-=j),q&&(o-=k),/^(se|s|e)$/.test(h)?(c.size.width=n,c.size.height=o):/^(ne)$/.test(h)?(c.size.width=n,c.size.height=o,c.position.top=g.top-m):/^(sw)$/.test(h)?(c.size.width=n,c.size.height=o,c.position.left=g.left-l):((o-k<=0||n-j<=0)&&(b=c._getPaddingPlusBorderDimensions(this)),o-k>0?(c.size.height=o,c.position.top=g.top-m):(o=k-b.height,c.size.height=o,c.position.top=g.top+f.height-o),n-j>0?(c.size.width=n,c.position.left=g.left-l):(n=j-b.width,c.size.width=n,c.position.left=g.left+f.width-n))}}),a.ui.resizable}); !function(a){"function"==typeof define&&define.amd?define(["jquery","./core","./mouse","./widget"],a):a(jQuery)}(function(a){return a.widget("ui.draggable",a.ui.mouse,{version:"1.11.4",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"===this.options.helper&&this._setPositionRelative(),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._setHandleClassName(),this._mouseInit()},_setOption:function(a,b){this._super(a,b),"handle"===a&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?void(this.destroyOnClear=!0):(this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._removeHandleClassName(),void this._mouseDestroy())},_mouseCapture:function(b){var c=this.options;return this._blurActiveElement(b),!(this.helper||c.disabled||a(b.target).closest(".ui-resizable-handle").length>0)&&(this.handle=this._getHandle(b),!!this.handle&&(this._blockFrames(c.iframeFix===!0?"iframe":c.iframeFix),!0))},_blockFrames:function(b){this.iframeBlocks=this.document.find(b).map(function(){var b=a(this);return a("
").css("position","absolute").appendTo(b.parent()).outerWidth(b.outerWidth()).outerHeight(b.outerHeight()).offset(b.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_blurActiveElement:function(b){var c=this.document[0];if(this.handleElement.is(b.target))try{c.activeElement&&"body"!==c.activeElement.nodeName.toLowerCase()&&a(c.activeElement).blur()}catch(d){}},_mouseStart:function(b){var c=this.options;return this.helper=this._createHelper(b),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),a.ui.ddmanager&&(a.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.hasFixedAncestor=this.helper.parents().filter(function(){return"fixed"===a(this).css("position")}).length>0,this.positionAbs=this.element.offset(),this._refreshOffsets(b),this.originalPosition=this.position=this._generatePosition(b,!1),this.originalPageX=b.pageX,this.originalPageY=b.pageY,c.cursorAt&&this._adjustOffsetFromHelper(c.cursorAt),this._setContainment(),this._trigger("start",b)===!1?(this._clear(),!1):(this._cacheHelperProportions(),a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this._normalizeRightBottom(),this._mouseDrag(b,!0),a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,b),!0)},_refreshOffsets:function(a){this.offset={top:this.positionAbs.top-this.margins.top,left:this.positionAbs.left-this.margins.left,scroll:!1,parent:this._getParentOffset(),relative:this._getRelativeOffset()},this.offset.click={left:a.pageX-this.offset.left,top:a.pageY-this.offset.top}},_mouseDrag:function(b,c){if(this.hasFixedAncestor&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(b,!0),this.positionAbs=this._convertPositionTo("absolute"),!c){var d=this._uiHash();if(this._trigger("drag",b,d)===!1)return this._mouseUp({}),!1;this.position=d.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),!1},_mouseStop:function(b){var c=this,d=!1;return a.ui.ddmanager&&!this.options.dropBehaviour&&(d=a.ui.ddmanager.drop(this,b)),this.dropped&&(d=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!d||"valid"===this.options.revert&&d||this.options.revert===!0||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,d)?a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",b)!==!1&&c._clear()}):this._trigger("stop",b)!==!1&&this._clear(),!1},_mouseUp:function(b){return this._unblockFrames(),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b),this.handleElement.is(b.target)&&this.element.focus(),a.ui.mouse.prototype._mouseUp.call(this,b)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(b){return!this.options.handle||!!a(b.target).closest(this.element.find(this.options.handle)).length},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this.handleElement.addClass("ui-draggable-handle")},_removeHandleClassName:function(){this.handleElement.removeClass("ui-draggable-handle")},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper),e=d?a(c.helper.apply(this.element[0],[b])):"clone"===c.helper?this.element.clone().removeAttr("id"):this.element;return e.parents("body").length||e.appendTo("parent"===c.appendTo?this.element[0].parentNode:c.appendTo),d&&e[0]===this.element[0]&&this._setPositionRelative(),e[0]===this.element[0]||/(fixed|absolute)/.test(e.css("position"))||e.css("position","absolute"),e},_setPositionRelative:function(){/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative")},_adjustOffsetFromHelper:function(b){"string"==typeof b&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left"in b&&(this.offset.click.left=b.left+this.margins.left),"right"in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top"in b&&(this.offset.click.top=b.top+this.margins.top),"bottom"in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top)},_isRootNode:function(a){return/(html|body)/i.test(a.tagName)||a===this.document[0]},_getParentOffset:function(){var b=this.offsetParent.offset(),c=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==c&&a.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(b={top:0,left:0}),{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var a=this.element.position(),b=this._isRootNode(this.scrollParent[0]);return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+(b?0:this.scrollParent.scrollTop()),left:a.left-(parseInt(this.helper.css("left"),10)||0)+(b?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var b,c,d,e=this.options,f=this.document[0];return this.relativeContainer=null,e.containment?"window"===e.containment?void(this.containment=[a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,a(window).scrollLeft()+a(window).width()-this.helperProportions.width-this.margins.left,a(window).scrollTop()+(a(window).height()||f.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):"document"===e.containment?void(this.containment=[0,0,a(f).width()-this.helperProportions.width-this.margins.left,(a(f).height()||f.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]):e.containment.constructor===Array?void(this.containment=e.containment):("parent"===e.containment&&(e.containment=this.helper[0].parentNode),c=a(e.containment),d=c[0],void(d&&(b=/(scroll|auto)/.test(c.css("overflow")),this.containment=[(parseInt(c.css("borderLeftWidth"),10)||0)+(parseInt(c.css("paddingLeft"),10)||0),(parseInt(c.css("borderTopWidth"),10)||0)+(parseInt(c.css("paddingTop"),10)||0),(b?Math.max(d.scrollWidth,d.offsetWidth):d.offsetWidth)-(parseInt(c.css("borderRightWidth"),10)||0)-(parseInt(c.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(b?Math.max(d.scrollHeight,d.offsetHeight):d.offsetHeight)-(parseInt(c.css("borderBottomWidth"),10)||0)-(parseInt(c.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=c))):void(this.containment=null)},_convertPositionTo:function(a,b){b||(b=this.position);var c="absolute"===a?1:-1,d=this._isRootNode(this.scrollParent[0]);return{top:b.top+this.offset.relative.top*c+this.offset.parent.top*c-("fixed"===this.cssPosition?-this.offset.scroll.top:d?0:this.offset.scroll.top)*c,left:b.left+this.offset.relative.left*c+this.offset.parent.left*c-("fixed"===this.cssPosition?-this.offset.scroll.left:d?0:this.offset.scroll.left)*c}},_generatePosition:function(a,b){var c,d,e,f,g=this.options,h=this._isRootNode(this.scrollParent[0]),i=a.pageX,j=a.pageY;return h&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),b&&(this.containment&&(this.relativeContainer?(d=this.relativeContainer.offset(),c=[this.containment[0]+d.left,this.containment[1]+d.top,this.containment[2]+d.left,this.containment[3]+d.top]):c=this.containment,a.pageX-this.offset.click.leftc[2]&&(i=c[2]+this.offset.click.left),a.pageY-this.offset.click.top>c[3]&&(j=c[3]+this.offset.click.top)),g.grid&&(e=g.grid[1]?this.originalPageY+Math.round((j-this.originalPageY)/g.grid[1])*g.grid[1]:this.originalPageY,j=c?e-this.offset.click.top>=c[1]||e-this.offset.click.top>c[3]?e:e-this.offset.click.top>=c[1]?e-g.grid[1]:e+g.grid[1]:e,f=g.grid[0]?this.originalPageX+Math.round((i-this.originalPageX)/g.grid[0])*g.grid[0]:this.originalPageX,i=c?f-this.offset.click.left>=c[0]||f-this.offset.click.left>c[2]?f:f-this.offset.click.left>=c[0]?f-g.grid[0]:f+g.grid[0]:f),"y"===g.axis&&(i=this.originalPageX),"x"===g.axis&&(j=this.originalPageY)),{top:j-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:h?0:this.offset.scroll.top),left:i-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:h?0:this.offset.scroll.left)}},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_normalizeRightBottom:function(){"y"!==this.options.axis&&"auto"!==this.helper.css("right")&&(this.helper.width(this.helper.width()),this.helper.css("right","auto")),"x"!==this.options.axis&&"auto"!==this.helper.css("bottom")&&(this.helper.height(this.helper.height()),this.helper.css("bottom","auto"))},_trigger:function(b,c,d){return d=d||this._uiHash(),a.ui.plugin.call(this,b,[c,d,this],!0),/^(drag|start|stop)/.test(b)&&(this.positionAbs=this._convertPositionTo("absolute"),d.offset=this.positionAbs),a.Widget.prototype._trigger.call(this,b,c,d)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),a.ui.plugin.add("draggable","connectToSortable",{start:function(b,c,d){var e=a.extend({},c,{item:d.element});d.sortables=[],a(d.options.connectToSortable).each(function(){var c=a(this).sortable("instance");c&&!c.options.disabled&&(d.sortables.push(c),c.refreshPositions(),c._trigger("activate",b,e))})},stop:function(b,c,d){var e=a.extend({},c,{item:d.element});d.cancelHelperRemoval=!1,a.each(d.sortables,function(){var a=this;a.isOver?(a.isOver=0,d.cancelHelperRemoval=!0,a.cancelHelperRemoval=!1,a._storedCSS={position:a.placeholder.css("position"),top:a.placeholder.css("top"),left:a.placeholder.css("left")},a._mouseStop(b),a.options.helper=a.options._helper):(a.cancelHelperRemoval=!0,a._trigger("deactivate",b,e))})},drag:function(b,c,d){a.each(d.sortables,function(){var e=!1,f=this;f.positionAbs=d.positionAbs,f.helperProportions=d.helperProportions,f.offset.click=d.offset.click,f._intersectsWith(f.containerCache)&&(e=!0,a.each(d.sortables,function(){return this.positionAbs=d.positionAbs,this.helperProportions=d.helperProportions,this.offset.click=d.offset.click,this!==f&&this._intersectsWith(this.containerCache)&&a.contains(f.element[0],this.element[0])&&(e=!1),e})),e?(f.isOver||(f.isOver=1,d._parent=c.helper.parent(),f.currentItem=c.helper.appendTo(f.element).data("ui-sortable-item",!0),f.options._helper=f.options.helper,f.options.helper=function(){return c.helper[0]},b.target=f.currentItem[0],f._mouseCapture(b,!0),f._mouseStart(b,!0,!0),f.offset.click.top=d.offset.click.top,f.offset.click.left=d.offset.click.left,f.offset.parent.left-=d.offset.parent.left-f.offset.parent.left,f.offset.parent.top-=d.offset.parent.top-f.offset.parent.top,d._trigger("toSortable",b),d.dropped=f.element,a.each(d.sortables,function(){this.refreshPositions()}),d.currentItem=d.element,f.fromOutside=d),f.currentItem&&(f._mouseDrag(b),c.position=f.position)):f.isOver&&(f.isOver=0,f.cancelHelperRemoval=!0,f.options._revert=f.options.revert,f.options.revert=!1,f._trigger("out",b,f._uiHash(f)),f._mouseStop(b,!0),f.options.revert=f.options._revert,f.options.helper=f.options._helper,f.placeholder&&f.placeholder.remove(),c.helper.appendTo(d._parent),d._refreshOffsets(b),c.position=d._generatePosition(b,!0),d._trigger("fromSortable",b),d.dropped=!1,a.each(d.sortables,function(){this.refreshPositions()}))})}}),a.ui.plugin.add("draggable","cursor",{start:function(b,c,d){var e=a("body"),f=d.options;e.css("cursor")&&(f._cursor=e.css("cursor")),e.css("cursor",f.cursor)},stop:function(b,c,d){var e=d.options;e._cursor&&a("body").css("cursor",e._cursor)}}),a.ui.plugin.add("draggable","opacity",{start:function(b,c,d){var e=a(c.helper),f=d.options;e.css("opacity")&&(f._opacity=e.css("opacity")),e.css("opacity",f.opacity)},stop:function(b,c,d){var e=d.options;e._opacity&&a(c.helper).css("opacity",e._opacity)}}),a.ui.plugin.add("draggable","scroll",{start:function(a,b,c){c.scrollParentNotHidden||(c.scrollParentNotHidden=c.helper.scrollParent(!1)),c.scrollParentNotHidden[0]!==c.document[0]&&"HTML"!==c.scrollParentNotHidden[0].tagName&&(c.overflowOffset=c.scrollParentNotHidden.offset())},drag:function(b,c,d){var e=d.options,f=!1,g=d.scrollParentNotHidden[0],h=d.document[0];g!==h&&"HTML"!==g.tagName?(e.axis&&"x"===e.axis||(d.overflowOffset.top+g.offsetHeight-b.pageY=0;m--)i=d.snapElements[m].left-d.margins.left,j=i+d.snapElements[m].width,k=d.snapElements[m].top-d.margins.top,l=k+d.snapElements[m].height,rj+p||tl+p||!a.contains(d.snapElements[m].item.ownerDocument,d.snapElements[m].item)?(d.snapElements[m].snapping&&d.options.snap.release&&d.options.snap.release.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[m].item})),d.snapElements[m].snapping=!1):("inner"!==o.snapMode&&(e=Math.abs(k-t)<=p,f=Math.abs(l-s)<=p,g=Math.abs(i-r)<=p,h=Math.abs(j-q)<=p,e&&(c.position.top=d._convertPositionTo("relative",{top:k-d.helperProportions.height,left:0}).top),f&&(c.position.top=d._convertPositionTo("relative",{top:l,left:0}).top),g&&(c.position.left=d._convertPositionTo("relative",{top:0,left:i-d.helperProportions.width}).left),h&&(c.position.left=d._convertPositionTo("relative",{top:0,left:j}).left)),n=e||f||g||h,"outer"!==o.snapMode&&(e=Math.abs(k-s)<=p,f=Math.abs(l-t)<=p,g=Math.abs(i-q)<=p,h=Math.abs(j-r)<=p,e&&(c.position.top=d._convertPositionTo("relative",{top:k,left:0}).top),f&&(c.position.top=d._convertPositionTo("relative",{top:l-d.helperProportions.height,left:0}).top),g&&(c.position.left=d._convertPositionTo("relative",{top:0,left:i}).left),h&&(c.position.left=d._convertPositionTo("relative",{top:0,left:j-d.helperProportions.width}).left)),!d.snapElements[m].snapping&&(e||f||g||h||n)&&d.options.snap.snap&&d.options.snap.snap.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[m].item})),d.snapElements[m].snapping=e||f||g||h||n)}}),a.ui.plugin.add("draggable","stack",{start:function(b,c,d){var e,f=d.options,g=a.makeArray(a(f.stack)).sort(function(b,c){return(parseInt(a(b).css("zIndex"),10)||0)-(parseInt(a(c).css("zIndex"),10)||0)});g.length&&(e=parseInt(a(g[0]).css("zIndex"),10)||0,a(g).each(function(b){a(this).css("zIndex",e+b)}),this.css("zIndex",e+g.length))}}),a.ui.plugin.add("draggable","zIndex",{start:function(b,c,d){var e=a(c.helper),f=d.options;e.css("zIndex")&&(f._zIndex=e.css("zIndex")),e.css("zIndex",f.zIndex)},stop:function(b,c,d){var e=d.options;e._zIndex&&a(c.helper).css("zIndex",e._zIndex)}}),a.ui.draggable}); !function(a){"function"==typeof define&&define.amd?define(["jquery","./core","./widget"],a):a(jQuery)}(function(a){var b,c="ui-button ui-widget ui-state-default ui-corner-all",d="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",e=function(){var b=a(this);setTimeout(function(){b.find(":ui-button").button("refresh")},1)},f=function(b){var c=b.name,d=b.form,e=a([]);return c&&(c=c.replace(/'/g,"\\'"),e=d?a(d).find("[name='"+c+"'][type=radio]"):a("[name='"+c+"'][type=radio]",b.ownerDocument).filter(function(){return!this.form})),e};return a.widget("ui.button",{version:"1.11.4",defaultElement:"").button({label:this.options.closeText,icons:{primary:"ui-icon-closethick"},text:!1}).addClass("ui-dialog-titlebar-close").appendTo(this.uiDialogTitlebar),this._on(this.uiDialogTitlebarClose,{click:function(a){a.preventDefault(),this.close(a)}}),b=a("").uniqueId().addClass("ui-dialog-title").prependTo(this.uiDialogTitlebar),this._title(b),this.uiDialog.attr({"aria-labelledby":b.attr("id")})},_title:function(a){this.options.title||a.html(" "),a.text(this.options.title)},_createButtonPane:function(){this.uiDialogButtonPane=a("
").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),this.uiButtonSet=a("
").addClass("ui-dialog-buttonset").appendTo(this.uiDialogButtonPane),this._createButtons()},_createButtons:function(){var b=this,c=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),a.isEmptyObject(c)||a.isArray(c)&&!c.length?void this.uiDialog.removeClass("ui-dialog-buttons"):(a.each(c,function(c,d){var e,f;d=a.isFunction(d)?{click:d,text:c}:d,d=a.extend({type:"button"},d),e=d.click,d.click=function(){e.apply(b.element[0],arguments)},f={icons:d.icons,text:d.showText},delete d.icons,delete d.showText,a("",d).button(f).appendTo(b.uiButtonSet)}),this.uiDialog.addClass("ui-dialog-buttons"),void this.uiDialogButtonPane.appendTo(this.uiDialog))},_makeDraggable:function(){function b(a){return{position:a.position,offset:a.offset}}var c=this,d=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(d,e){a(this).addClass("ui-dialog-dragging"),c._blockFrames(),c._trigger("dragStart",d,b(e))},drag:function(a,d){c._trigger("drag",a,b(d))},stop:function(e,f){var g=f.offset.left-c.document.scrollLeft(),h=f.offset.top-c.document.scrollTop();d.position={my:"left top",at:"left"+(g>=0?"+":"")+g+" top"+(h>=0?"+":"")+h,of:c.window},a(this).removeClass("ui-dialog-dragging"),c._unblockFrames(),c._trigger("dragStop",e,b(f))}})},_makeResizable:function(){function b(a){return{originalPosition:a.originalPosition,originalSize:a.originalSize,position:a.position,size:a.size}}var c=this,d=this.options,e=d.resizable,f=this.uiDialog.css("position"),g="string"==typeof e?e:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:d.maxWidth,maxHeight:d.maxHeight,minWidth:d.minWidth,minHeight:this._minHeight(),handles:g,start:function(d,e){a(this).addClass("ui-dialog-resizing"),c._blockFrames(),c._trigger("resizeStart",d,b(e))},resize:function(a,d){c._trigger("resize",a,b(d))},stop:function(e,f){var g=c.uiDialog.offset(),h=g.left-c.document.scrollLeft(),i=g.top-c.document.scrollTop();d.height=c.uiDialog.height(),d.width=c.uiDialog.width(),d.position={my:"left top",at:"left"+(h>=0?"+":"")+h+" top"+(i>=0?"+":"")+i,of:c.window},a(this).removeClass("ui-dialog-resizing"),c._unblockFrames(),c._trigger("resizeStop",e,b(f))}}).css("position",f)},_trackFocus:function(){this._on(this.widget(),{focusin:function(b){this._makeFocusTarget(),this._focusedElement=a(b.target)}})},_makeFocusTarget:function(){this._untrackInstance(),this._trackingInstances().unshift(this)},_untrackInstance:function(){var b=this._trackingInstances(),c=a.inArray(this,b);c!==-1&&b.splice(c,1)},_trackingInstances:function(){var a=this.document.data("ui-dialog-instances");return a||(a=[],this.document.data("ui-dialog-instances",a)),a},_minHeight:function(){var a=this.options;return"auto"===a.height?a.minHeight:Math.min(a.minHeight,a.height)},_position:function(){var a=this.uiDialog.is(":visible");a||this.uiDialog.show(),this.uiDialog.position(this.options.position),a||this.uiDialog.hide()},_setOptions:function(b){var c=this,d=!1,e={};a.each(b,function(a,b){c._setOption(a,b),a in c.sizeRelatedOptions&&(d=!0),a in c.resizableRelatedOptions&&(e[a]=b)}),d&&(this._size(),this._position()),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",e)},_setOption:function(a,b){var c,d,e=this.uiDialog;"dialogClass"===a&&e.removeClass(this.options.dialogClass).addClass(b),"disabled"!==a&&(this._super(a,b),"appendTo"===a&&this.uiDialog.appendTo(this._appendTo()),"buttons"===a&&this._createButtons(),"closeText"===a&&this.uiDialogTitlebarClose.button({label:""+b}),"draggable"===a&&(c=e.is(":data(ui-draggable)"),c&&!b&&e.draggable("destroy"),!c&&b&&this._makeDraggable()),"position"===a&&this._position(),"resizable"===a&&(d=e.is(":data(ui-resizable)"),d&&!b&&e.resizable("destroy"),d&&"string"==typeof b&&e.resizable("option","handles",b),d||b===!1||this._makeResizable()),"title"===a&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var a,b,c,d=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0}),d.minWidth>d.width&&(d.width=d.minWidth),a=this.uiDialog.css({height:"auto",width:d.width}).outerHeight(),b=Math.max(0,d.minHeight-a),c="number"==typeof d.maxHeight?Math.max(0,d.maxHeight-a):"none","auto"===d.height?this.element.css({minHeight:b,maxHeight:c,height:"auto"}):this.element.height(Math.max(0,d.height-a)),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var b=a(this);return a("
").css({position:"absolute",width:b.outerWidth(),height:b.outerHeight()}).appendTo(b.parent()).offset(b.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(b){return!!a(b.target).closest(".ui-dialog").length||!!a(b.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var b=!0;this._delay(function(){b=!1}),this.document.data("ui-dialog-overlays")||this._on(this.document,{focusin:function(a){b||this._allowInteraction(a)||(a.preventDefault(),this._trackingInstances()[0]._focusTabbable())}}),this.overlay=a("
").addClass("ui-widget-overlay ui-front").appendTo(this._appendTo()),this._on(this.overlay,{mousedown:"_keepFocus"}),this.document.data("ui-dialog-overlays",(this.document.data("ui-dialog-overlays")||0)+1)}},_destroyOverlay:function(){if(this.options.modal&&this.overlay){var a=this.document.data("ui-dialog-overlays")-1;a?this.document.data("ui-dialog-overlays",a):this.document.unbind("focusin").removeData("ui-dialog-overlays"),this.overlay.remove(),this.overlay=null}}})}); window.Toolset=window.Toolset||{}; if(Backbone&&Backbone.View){ Backbone.View.prototype.eventDispatcher=_.extend({}, Backbone.Events); } if(typeof WPV_Toolset=='undefined'){ var WPV_Toolset={}; WPV_Toolset.message={}; WPV_Toolset.message.container=null; } if(typeof WPV_Toolset.Utils=='undefined') WPV_Toolset.Utils={}; WPV_Toolset.Utils.eventDispatcher=_.extend({}, Backbone.Events); WPV_Toolset.Utils.restoreEventPropagation=function (event){ if(jQuery.browser.mozilla){ return event; } if(event.isImmediatePropagationStopped()===false&&event.isPropagationStopped()===false){ return event; } if(typeof event.originalEvent===undefined){ return event; } var refEvent=event.originalEvent; try { refEvent.cancelBubble=false; refEvent.defaultPrevented=false; refEvent.returnValue=true; refEvent.timeStamp=(new Date()).getTime(); } catch (e){ return event; } if(event.target.dispatchEvent){ try { event.target.dispatchEvent(refEvent); } catch (e){ return; }}else if(event.target.fireEvent){ event.target.fireEvent(refEvent); } return refEvent; }; WPV_Toolset.Utils.do_ajax_post=function (params, callback_object){ jQuery.post(ajaxurl, params, function (response){ if((typeof(response)!=='undefined')&&response!==null&&(response.message||response.Data||response.data)){ if(callback_object&&callback_object.success&&typeof callback_object.success=='function') callback_object.success.call(this, response, params); WPV_Toolset.Utils.eventDispatcher.trigger('on_ajax_success_' + params.action, response, params); } else if((typeof(response)!=='undefined')&&response!==null&&response.error){ if(callback_object&&callback_object.error&&typeof callback_object.error=='function') callback_object.error.call(this, response, params); WPV_Toolset.Utils.eventDispatcher.trigger('on_ajax_error_' + params.action, response, params); }}, 'json') .fail(function (jqXHR, textStatus, errorThrown){ console.log('Ajax call failed', textStatus, errorThrown) if(callback_object&&callback_object.fail&&typeof callback_object.fail=='function') callback_object.fail.call(this, errorThrown); WPV_Toolset.Utils.eventDispatcher.trigger('on_ajax_fail_' + params.action, textStatus, errorThrown, params); }) .always(function (){ if(callback_object&&callback_object.always&&typeof callback_object.always=='function') callback_object.always.call(this, arguments); WPV_Toolset.Utils.eventDispatcher.trigger('on_ajax_complete_' + params.action, arguments, params); }); }; ;(function ($, window, document, undefined){ var pluginName="wpvToolsetMessage", dataPlugin="plugin_" + pluginName, defaults={ text: "Enter a customized text to be displayed", type: '', inline: false, position: "after", header: false, headerText: false, close: false, use_this: true, fadeIn: 100, fadeOut: 100, stay: false, onClose: false, onOpen: false, onDestroy: false, dontShowAgain: null, dontShowAgainText: '', args: [], referTo: null, offestX: -20, offsetY: 0, classname: '', stay_for: 1200, msPerCharacter: 50 }, has_stay=false, is_open=false, prev=null, prev_text=''; function Plugin(element, options){ var self=this; self.container=$(element); self.prms=$.extend({}, defaults, options); self._defaults=defaults; self._name=pluginName; self.box=null; self.header=null; self.remove=null; self.tag=self.prms.inline ? 'span':'p'; self.bool=false; if(typeof (options.stay_for)==='undefined'&&typeof(self.prms.msPerCharacter)==='number'){ self.prms.stay_for=self.prms.text.length * self.prms.msPerCharacter; }} Plugin.prototype={ init: function (){ var self=this; if(self.container.data('has_message')){ self.destroy(); } if(self.container.children().length > 0){ self.container.children().each(function (i){ if($(this).text()==self.prms.text){ self.bool=true; }}); } if(self.bool) return; if(has_stay){ if(prev){ var rem=prev; prev=null; has_stay=false; is_open=false; rem.fadeTo(0, 0, function (){ rem.remove(); rem=null; }); }} if(self.prms.header&&self.prms.headerText){ self.box=$('
'); self.header=$('

'); self.box.append(self.header); self.header.text(self.prms.headerText); self.box.append('<' + self.tag + '>'); self.box.find(self.tag).html(self.prms.text); }else{ self.box=$('<' + self.tag + ' class="toolset-alert toolset-alert-' + self.prms.type + ' ' + self.prms.classname + '" />'); self.box.html(self.prms.text); } if(self.prms.dontShowAgain&&typeof self.prms.dontShowAgain==='function'&&self.prms.dontShowAgainText!==''){ self.$dontContainer=$('') self.$dont_show=$(''); self.$dont_label=$(''); self.$dont_label.text(self.prms.dontShowAgainText); self.$dontContainer.append(self.$dont_show, self.$dont_label); self.box.append(self.$dontContainer); self.prms.dontShowAgain.call(self.$dont_show, self, self.prms.args); } if(self.prms.close){ self.remove=$(''); self.box.append(self.remove); self.remove.on('click', function (event){ self.wpvMessageRemove(); }); } if(self.prms.position=='before'){ self.container.prepend(self.box); }else{ self.container.append(self.box); } self.container.data('has_message', true); self.box.hide(); if(null!==self.prms.referTo){ self.box.css({ "position": "absolute", "z-index": 10000, "top": self.prms.referTo.position().top + self.prms.offestY + "px", "left": self.prms.referTo.position().left + self.prms.referTo.width() + self.prms.offestX + "px" }); } self.container.data('message-box', self.box); self.box.fadeTo(null!=prev ? 0:self.prms.fadeIn, 1, function (){ $(this).trigger('wpv-message-open'); prev=$(this); prev_text=self.prms.text; is_open=true; if(self.prms.onOpen&&typeof self.prms.onOpen=='function'){ self.prms.onOpen.apply(self, self.prms.args); } if(self.prms.stay){ has_stay=true; }else{ var remove_message=_.bind(self.wpvMessageRemove, self); _.delay(remove_message, self.prms.stay_for); }}); return self; }, wpvMessageRemove: function (){ var self=this; if(self.box||self.container.data('message-box')){ var box=self.box||self.container.data('message-box'); box.fadeTo(self.prms.fadeOut, 0, function (){ $(this).trigger('wpv-message-remove'); is_open=false; prev=null; prev_text=''; has_stay=false; if(self.prms.onClose&&typeof self.prms.onClose=='function'){ self.prms.onClose.apply(self, self.prms.args); } $(this).remove(); self.container.data('has_message', false); self.container.data('message-box', null); self.box=null; }); } return self; }, destroy: function (){ $(this).trigger('wpv-message-remove'); this.container.empty(); if(this.prms.onDestroy&&typeof this.prms.onDestroy=='function'){ this.prms.onDestroy.apply(this, this.prms.args); } this.box=null; this.container.data('message-box', null); this.container.data('has_message', false); }, has_message: function (){ return this.container.data('has_message'); }}; $.fn[pluginName]=function (arg){ return this.each(function (){ var args, instance; if(!($(this).data(dataPlugin) instanceof Plugin)){ $(this).data(dataPlugin, new Plugin($(this), arg)); }else{ $(this).data(dataPlugin, null); $(this).data(dataPlugin, new Plugin($(this), arg)); } instance=$(this).data(dataPlugin); instance.element=$(this); if(typeof arg==='undefined'||typeof arg==='object'){ if(typeof instance['init']==='function'){ instance.init(arg); }}else if(typeof arg==='string'&&typeof instance[arg]==='function'){ args=Array.prototype.slice.call(arguments, 1); return instance[arg].apply(instance, args); }else{ $.error('Method ' + arg + ' does not exist on jQuery.' + pluginName); }}); };})(jQuery, window, document); jQuery(function ($){ $.each($('.js-show-toolset-message:not(.js-show-toolset-message-inited)'), function (){ $(this) .addClass('js-show-toolset-message-inited') .show() .wpvToolsetHelp(); }); }); if(typeof jQuery.fn.wpvToolsetHelp==='undefined'){ (function ($){ $.fn.wpvToolsetHelp=function (options){ var thiz=this; var $container=this; var prms=$.extend({ content:(thiz.contents().length!==0) ? thiz.contents():"Enter a customized text to be displayed", tutorialButtonText:(typeof(thiz.data('tutorial-button-text'))!=='undefined') ? thiz.data('tutorial-button-text'):null, tutorialButtonURL:(typeof(thiz.data('tutorial-button-url'))!=='undefined') ? thiz.data('tutorial-button-url'):null, linkText:(typeof(thiz.data('link-text'))!=='undefined') ? thiz.data('link-text'):null, linkURL:(typeof(thiz.data('link-url'))!=='undefined') ? thiz.data('link-url'):null, footer:(typeof(thiz.data('footer'))!=='undefined') ? thiz.data('footer'):false, classname:(typeof(thiz.data('classname'))!=='undefined') ? thiz.data('classname'):'', close:(typeof(thiz.data('close'))!=='undefined') ? thiz.data('close'):true, hidden:(typeof(thiz.data('hidden'))!=='undefined') ? thiz.data('hidden'):false, onClose: false, args: [] }, options); if($.type(prms.content)==='string'){ prms.content=$('

' + prms.content + '

'); } var $box=$('
'); var $footer=$(''); if(prms.footer===true){ $footer.appendTo($box); } prms.content.appendTo($box.find('.toolset-help-content')); this.wpvHelpRemove=function (){ if($box) $box.fadeOut('fast', function (){ if(prms.onClose&&typeof prms.onClose==='function'){ prms.onClose.apply($container, prms.args); }}); return this; }; if((prms.tutorialButtonText&&prms.tutorialButtonURL)||(prms.linkText&&prms.linkURL)){ var $toolbar=$('

'); $toolbar.appendTo($box.find('.toolset-help-content')); if(prms.tutorialButtonText&&prms.tutorialButtonURL){ $('
' + prms.tutorialButtonText + '').appendTo($toolbar); } if(prms.linkText&&prms.linkURL){ $('' + prms.linkText + '').appendTo($toolbar); }} if(prms.close===true){ $('').appendTo($box); } var $closeButtons=$box.find('.js-toolset-help-close'); if($closeButtons.length!==0){ $closeButtons.on('click', function (){ $container.wpvHelpRemove(); }); } $box.appendTo($container).hide(); if($container.hasClass('js-show-toolset-message')){ $box.unwrap(); } if(prms.hidden===false){ $box.fadeIn('fast'); } return this; };})(jQuery); } (function ($){ $.fn.insertAtIndex=function (index, selector){ var opts=$.extend({ index: 0, selector: '
' }, {index: index, selector: selector}); return this.each(function (){ var p=$(this); var i=($.isNumeric(opts.index) ? parseInt(opts.index, 10):0); if(i <=0) p.prepend(opts.selector); else if(i > p.children().length - 1) p.append(opts.selector); else p.children().eq(i).before(opts.selector); }); };})(jQuery); (function ($){ $.fn.loaderOverlay=function (action, options){ var defaults={ fadeInSpeed: 'fast', fadeOutSpeed: 'fast', displayLoader: true, css: { "opacity": "0.4" }, class: null }; var prms=$.extend(defaults, options); var $overlayContainer=this; var $overlayEl=$('
'); var showOverlay=function (){ if(!$overlayContainer.data('has-overlay')){ $overlayEl .appendTo($overlayContainer) .css(prms.css) .hide() .fadeIn(prms.fadeInSpeed, function (){ $overlayContainer.data('has-overlay', true); $overlayContainer.data('overlay-el', $overlayEl); if(_.isObject(options)&&typeof options.onOpen==='function'){ options.onOpen.call(this, arguments); }}); }}; var hideOverlay=function (){ if($overlayContainer.data('has-overlay')){ $overlayContainer.data('overlay-el') .fadeOut(prms.fadeOutSpeed, function (){ $overlayEl.detach().remove(); $overlayContainer.data('has-overlay', false); if(options&&typeof options.onRemove==='function'){ options.onRemove.call(this, arguments); }}); }}; if(prms.class!==null){ $overlayEl.addClass(prms.class); } if(prms.displayLoader){ $('
').appendTo($overlayEl); } if(typeof(action)!=='undefined'){ if(action==='show'){ showOverlay(); } else if(action==='hide'){ hideOverlay(); }}else{ if($overlayContainer.data('has-overlay')){ hideOverlay(); }else{ showOverlay(); }} return this; };})(jQuery); (function ($){ $.fn.ddlWpPointer=function (action, options){ var $el=this; var defaults={ headerText: function (){ var header=$el.data('tooltip-header'); if(header){ return header; }else{ return 'use data-tooltip-header="header text" attribute to create a header'; }}, contentText: function (){ var content=$el.data('tooltip-content'); if(content){ return content; }else{ return 'use data-tooltip-content="content text" attribute to create a content'; }}, content: function (){ return '

' + defaults.headerText() + '

' + defaults.contentText() + '

'; }, edge: 'left', align: 'center', offset: '0 0', stay_hidden: false }; var prms=$.extend(defaults, options); var showPointer=function (){ if(!$el.data('has-wppointer')){ if(typeof prms.onOpen==='function'){ prms.onOpen.call(this, arguments); } $el .pointer({ content: function (){ return prms.content; }, pointerClass: 'wp-toolset-pointer wp-toolset-layouts-pointer', position: { edge: prms.edge, align: prms.align, offset: prms.offset }, close: function (){ $el.data('has-wppointer', false); $el.trigger('help_tooltip_closes', options); }}) .pointer('open'); $el.data('has-wppointer', true); if(typeof prms.onComplete==='function'){ prms.onComplete.call(this, arguments); }} }; var hidePointer=function (){ if($el.data('has-wppointer')){ if(typeof prms.onClose==='function'){ prms.onClose.call(this, arguments); } $el.pointer('close'); $el.data('has-wppointer', false); }}; if(typeof(action)!=='undefined'){ if(action==='show'&&prms.stay_hidden!==true){ showPointer(); } else if(action==='hide'){ hidePointer(); }}else{ if($el.data('has-wppointer')){ hidePointer(); } else if(prms.stay_hidden!==true){ showPointer(); }} return this; };})(jQuery); WPV_Toolset.Utils.Loader=function (){ var self=this; self.loading=false; self.el=null; self.loader=jQuery('
'); self.loadShow=function (el, after){ self.el=el; self.loading=true; if(typeof after==='undefined'){ self.loader.prependTo(self.el).css('visibility', 'visible').show(); }else{ self.loader.insertAfter(self.el).css('visibility', 'visible').show(); } return self.loader; }; self.loadHide=function (){ var $completeFlag=jQuery('') _.each(self.loader[0].attributes, function (attribute){ if(attribute.name==='style'){ $completeFlag.attr(attribute.name, attribute.value); }}); var adjustPosition=function(positionName, position){ position=parseInt(position); if(position < 0){ $completeFlag.css(positionName, ''); }else{ position +=8; $completeFlag.css(positionName, position.toString() + 'px'); }}; adjustPosition('left', self.loader.css('left')); adjustPosition('right', self.loader.css('right')); self.loader=$completeFlag.replaceAll(self.loader).css({ color: 'green', fontSize: '22px' }); self.loader.fadeOut(1800, function (){ self.loader=jQuery('
').replaceAll(jQuery(this)); self.loading=false; self.loader.remove(); jQuery(this).remove(); }); return self.loader; };}; if(typeof _!='undefined'){ WPV_Toolset.Utils.flatten=function (x, result, prefix){ if(_.isObject(x)){ _.each(x, function (v, k){ WPV_Toolset.Utils.flatten(v, result, prefix ? prefix + '_' + k:k) }) }else{ result[prefix]=x } return result }; WPV_Toolset.Utils.flatten_filter_by_key=function (x, result, prefix, filter){ var res=[], find=WPV_Toolset.Utils.flatten(x, result, prefix); if(!filter) return _.values(find); _.each(find, function (element, index, list){ if(index.indexOf(prefix ? prefix + '_' + filter:filter)!==-1||filter===index) res.push(element); }); return res; } WPV_Toolset.Utils.containsObject=function (obj, list){ var res=_.find(list, function (val){ return _.isEqual(obj, val); }); return (_.isObject(res)) ? true:false; };} ; (function ($){ $.fn.textWidth=function (){ var text=this.html()||this.text()||this.val(); return($.textWidth(text)); }; $.textWidth=function (text){ var div=$('#textWidth'); if(div.length===0) div=$('').appendTo($('body')); div.html(text); return (div.width()); };})(jQuery); WPV_Toolset.Utils.escapeHtml=function (str){ if(typeof(str)=="string"){ try { var newStr=""; var nextCode=0; for (var i=0; i < str.length; i++){ nextCode=str.charCodeAt(i); if(nextCode > 0&&nextCode < 128){ newStr +="&#" + nextCode + ";"; }else{ newStr +="?"; }} return newStr; } catch (err){ }}else{ return str; }}; WPV_Toolset.Utils.editor_decode64=function (input){ var output="", chr1, chr2, chr3="", enc1, enc2, enc3, enc4="", i=0, keyStr="ABCDEFGHIJKLMNOP" + "QRSTUVWXYZabcdef" + "ghijklmnopqrstuv" + "wxyz0123456789+/" + "="; var base64test=/[^A-Za-z0-9\+\/\=]/g; if(base64test.exec(input)){ alert("There were invalid base64 characters in the input text.\n" + "Valid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\n" + "Expect errors in decoding."); } input=input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); do { enc1=keyStr.indexOf(input.charAt(i++)); enc2=keyStr.indexOf(input.charAt(i++)); enc3=keyStr.indexOf(input.charAt(i++)); enc4=keyStr.indexOf(input.charAt(i++)); chr1=(enc1 << 2) | (enc2 >> 4); chr2=((enc2 & 15) << 4) | (enc3 >> 2); chr3=((enc3 & 3) << 6) | enc4; output=output + String.fromCharCode(chr1); if(enc3!=64){ output=output + String.fromCharCode(chr2); } if(enc4!=64){ output=output + String.fromCharCode(chr3); } chr1=chr2=chr3=""; enc1=enc2=enc3=enc4=""; } while (i < input.length); return WPV_Toolset.Utils.editor_utf8_decode(output); }; WPV_Toolset.Utils.editor_utf8_decode=function (utftext){ var string=""; var i=0; var c=c1=c2=0; while (i < utftext.length){ c=utftext.charCodeAt(i); if(c < 128){ string +=String.fromCharCode(c); i++; } else if((c > 191)&&(c < 224)){ c2=utftext.charCodeAt(i + 1); string +=String.fromCharCode(((c & 31) << 6) | (c2 & 63)); i +=2; }else{ c2=utftext.charCodeAt(i + 1); c3=utftext.charCodeAt(i + 2); string +=String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63)); i +=3; }} return string; }; WPV_Toolset.Utils.fixedCharCodeAt=function (str, idx){ idx=idx||0; var code=str.charCodeAt(idx); var hi, low; if(0xD800 <=code&&code <=0xDBFF){ hi=code; low=str.charCodeAt(idx + 1); if(isNaN(low)){ throw 'High surrogate not followed by low surrogate in fixedCharCodeAt()'; } return ((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000; } if(0xDC00 <=code&&code <=0xDFFF){ return false; } return code; }; WPV_Toolset.replace_unicode_characters=function (string){ var from="ãàáäâẽèéëêìíïîõòóöôùúüûñç·/_,:;", to="aaaaaeeeeeiiiiooooouuuunc------"; for (var i=0, l=from.length; i < l; i++){ string=string.replace(new RegExp(from.charAt(i), 'g'), to.charAt(i)); } var unicode='!£$%&()=?^|#§'; for (var i=0; i < unicode.length; i++){ string=string.replace(new RegExp(unicode.charAt(i).regexEscape(), 'g'), WPV_Toolset.Utils.fixedCharCodeAt(unicode.charAt(i))); } return string; }; String.prototype.regexEscape=function regexEscape(){ return this.replace(/[\.\?\+\*\^\$\|\(\{\[\]\\)]/g, '\\$&'); }; ; (function ($, window, document, undefined){ var pluginName="toolsetTooltip", dataPlugin="plugin_" + pluginName, undefined, defaults={ top: undefined, text: '', close: null, open: null, additionalClass: '' }; function Plugin(element, options){ this.$element=element; this.settings=$.extend({}, defaults, options); this._defaults=defaults; this._name=pluginName; this._remove_tooltip=null; } $.extend(Plugin.prototype, { init: function (){ var self=this; this.$element.on('mouseenter', function (event){ event.stopImmediatePropagation(); self.show(event); jQuery(event.target).trigger('tooltip_show', event); }); this.$element.on('mouseleave', function (event){ event.stopImmediatePropagation(); self.hide(event); jQuery(event.target).trigger('tooltip_hide', event); }); }, show: function (event){ var self=this, $tooltip=$('
'), offset=self.$element.offset(), offset_top=typeof self.settings.top==='undefined' ? 20:self.settings.top; if(this.settings.additionalClass){ $tooltip.addClass(this.settings.additionalClass); } self._remove_tooltip=$tooltip; $tooltip .appendTo('body') .text(this.settings.text||self.$element.data('tooltip-text')) .css({ 'top': offset.top - $tooltip.height() - offset_top, 'left': offset.left - ($tooltip.outerWidth() / 2) + (self.$element.outerWidth() / 2), 'zIndex': '9999999' }) .fadeIn(100); self.$element.on('mousedown', function (){ if(self._remove_tooltip){ self._remove_tooltip.remove(); self._remove_tooltip=null; }}); if(self.settings.open!==null&&self.settings.open instanceof Function){ self.settings.open.call(self); } return $tooltip; }, hide: function (event){ var self=this; if(self._remove_tooltip){ if(self.settings.close!==null&&self.settings.close instanceof Function){ self.settings.close.call(self); } self._remove_tooltip.remove(); self._remove_tooltip=null; }} }); $.fn[pluginName]=function (arg){ return this.each(function (){ var args, instance; if(!($(this).data(dataPlugin) instanceof Plugin)){ $(this).data(dataPlugin, new Plugin($(this), arg)); } instance=$(this).data(dataPlugin); instance.element=$(this); if(typeof arg==='undefined'||typeof arg==='object'){ if(typeof instance['init']==='function'){ instance.init(arg); }}else if(typeof arg==='string'&&typeof instance[arg]==='function'){ args=Array.prototype.slice.call(arguments, 1); return instance[arg].apply(instance, args); }else{ $.error('Method ' + arg + ' does not exist on jQuery.' + pluginName); }}); };})(jQuery, window, document); ;(function ($, window, document, undefined){ var defaults={ className: 'highlighted' }, options={}; jQuery.fn.highlight=function (pat, option){ options=jQuery.extend(options, defaults, option) function innerHighlight(node, pat){ var skip=0; if(node.nodeType==3){ var pos=node.data.toUpperCase().indexOf(pat); if(pos >=0){ var spannode=document.createElement('span'); spannode.className=options.className; var middlebit=node.splitText(pos); var endbit=middlebit.splitText(pat.length); var middleclone=middlebit.cloneNode(true); spannode.appendChild(middleclone); middlebit.parentNode.replaceChild(spannode, middlebit); skip=1; }} else if(node.nodeType==1&&node.childNodes&&!/(script|style)/i.test(node.tagName)){ for (var i=0; i < node.childNodes.length; ++i){ i +=innerHighlight(node.childNodes[i], pat); }} return skip; } return this.each(function (){ innerHighlight(this, pat.toUpperCase()); }); }; jQuery.fn.removeHighlight=function (){ function newNormalize(node){ for (var i=0, children=node.childNodes, nodeCount=children.length; i < nodeCount; i++){ var child=children[i]; if(child.nodeType==1){ newNormalize(child); continue; } if(child.nodeType!=3){ continue; } var next=child.nextSibling; if(next==null||next.nodeType!=3){ continue; } var combined_text=child.nodeValue + next.nodeValue; new_node=node.ownerDocument.createTextNode(combined_text); node.insertBefore(new_node, child); node.removeChild(child); node.removeChild(next); i--; nodeCount--; }} return this.find("span." + options.className).each(function (){ var thisParent=this.parentNode; thisParent.replaceChild(this.firstChild, this); newNormalize(thisParent); }).end(); };}(jQuery, window, document)); var waitForFinalEvent=(function (){ var timers={}; return function (callback, ms, uniqueId){ if(!uniqueId){ uniqueId="Don't call this twice without a uniqueId"; } if(timers[uniqueId]){ clearTimeout(timers[uniqueId]); } timers[uniqueId]=setTimeout(callback, ms); };})(); WPV_Toolset.Utils._strip_scripts=function (data){ if(!data) return ''; if(_.isString(data)===false) return ''; data=data.replace(/</g, "|-lt-|"); data=data.replace(/>/g, "|-gt-|"); data=data.replace(/&(\w+);/g, "&$1;"); var out=data.replace(/<.*?script.*?>.*?<\/.*?script.*?>/igm, ""); out=out.replace(/</g, "<"); out=out.replace(/>/g, ">"); out=out.replace(/&(\w+);/g, "&$1;"); out=out.replace(/\|-lt-\|/g, '<'); out=out.replace(/\|-gt-\|/g, '>'); return out; }; if(!String.prototype.trim){ (function (){ var rtrim=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g; String.prototype.trim=function (){ return this.replace(rtrim, ''); };})(); } WPV_Toolset.Utils._strip_tags_and_preserve_text=function (text){ var rex=/<\/?(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdi|bdo|bgsound|big|blink|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|data|datalist|dd|del|details|dfn|dir|div|dl|dt|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|img|input|ins|isindex|kbd|keygen|label|legend|li|link|listing|main|map|mark|marquee|menu|menuitem|meta|meter|nav|nobr|noframes|noscript|object|ol|optgroup|option|output|p|param|plaintext|pre|progress|q|rp|rt|ruby|s|samp|script|section|select|small|source|spacer|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr|xmp)\b[^<>]*>/ig return _.escape(text.replace(rex, "")).trim(); }; WPV_Toolset.Utils.setConfirmUnload=function (checkIfConfirmationNeededCallback, onBeforeUnloadCallback, confirmationMessage){ window.onbeforeunload=function (e){ if(checkIfConfirmationNeededCallback()){ if(_.isFunction(onBeforeUnloadCallback)){ onBeforeUnloadCallback(); } if(e){ e.returnValue=confirmationMessage; } return confirmationMessage; }};}; if(typeof _!=='undefined'&&typeof _.capitalize==='undefined'){ _.mixin({ capitalize: function (string){ return string.charAt(0).toUpperCase() + string.substring(1).toLowerCase(); }}); } WPV_Toolset.Utils.has_shortcode=function (string){ var search=/\[(\[?)(\w*?\-*?\w*?)*?(?![\w-])([^\]\/]*(?:\/(?!\])[^\]\/]*)*?)(?:(\/)\]|\](?:([^\[]*(?:\[(?!\/\2\])[^\[]*)*)(\[\/\2\]))?)(\]?)/g; return decodeURIComponent(string).search(search)!==-1; }; WPV_Toolset.Utils.versionCompare=function (left, right){ if(typeof left + typeof right!='stringstring') return false; var a=left.split('.') , b=right.split('.') , i=0, len=Math.max(a.length, b.length); for (; i < len; i++){ if((a[i]&&!b[i]&&parseInt(a[i]) > 0)||(parseInt(a[i]) > parseInt(b[i]))){ return 1; }else if((b[i]&&!a[i]&&parseInt(b[i]) > 0)||(parseInt(a[i]) < parseInt(b[i]))){ return -1; }} return 0; }; WPV_Toolset.Utils.getParameterByName=function (name, url){ if(!url){ url=window.location.href; } name=name.replace(/[\[\]]/g, "\\$&"); var regex=new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)", "i"); var results=regex.exec(url); if(!results){ return null; } if(!results[2]){ return ''; } return decodeURIComponent(results[2].replace(/\+/g, " ")); }; WPV_Toolset.Utils.updateUrlQuery=function (key, value, url){ if(!url){ url=window.location.href; } var re=new RegExp("([?&])" + key + "=.*?(&|#|$)(.*)", "gi"); var hash; if(re.test(url)){ if(typeof value!=='undefined'&&value!==null){ return url.replace(re, '$1' + key + "=" + value + '$2$3'); }else{ hash=url.split('#'); url=hash[0].replace(re, '$1$3').replace(/(&|\?)$/, ''); if(typeof hash[1]!=='undefined'&&hash[1]!==null){ url +='#' + hash[1]; } return url; }}else{ if(typeof value!=='undefined'&&value!==null){ var separator=url.indexOf('?')!==-1 ? '&':'?'; hash=url.split('#'); url=hash[0] + separator + key + '=' + value; if(typeof hash[1]!=='undefined'&&hash[1]!==null){ url +='#' + hash[1]; } return url; }else{ return url; }} }; WPV_Toolset.Utils.Spinner={ create: function (){ return jQuery(''); }, show: function (spinner, show){ if(typeof(show)==='undefined'){ show=true; } if(!show){ WPV_Toolset.Utils.Spinner.hide(spinner); return; } spinner.addClass('is-active'); }, hide: function (spinner){ spinner.removeClass('is-active'); }, find: function (parentElement){ return parentElement.find('.spinner'); }}; WPV_Toolset.Utils.Ajax={ parseResponse: function (response){ if(typeof(response.success)==='undefined'){ console.log("parseResponse: no success value", response); return {success: false};}else{ return response; }}, call: function (data, successCallback, failCallback){ if(typeof(failCallback)==='undefined'){ failCallback=successCallback; } jQuery.post({ async: true, url: ajaxurl, data: data, success: function (originalResponse){ var response=WPV_Toolset.Utils.Ajax.parseResponse(originalResponse); if(response.success){ successCallback(response, response.data||{}); }else{ failCallback(response, response.data||{}); }}, error: function (ajaxContext){ console.log('Error:', ajaxContext.responseText); failCallback({success: false, data: {}}, {}); }}); }}; WPV_Toolset.Utils._template=function (template, data, settings){ var options=_.defaults({}, settings, _.templateSettings), _template=null; if(WPV_Toolset.Utils.versionCompare(_.VERSION, '1.7') >=0){ _template=_.template(template, options); return _template(data); }else{ return _.template(template, data, options); }}; if(jQuery&&jQuery.ui&&jQuery.ui.dialog){ jQuery.extend(jQuery.ui.dialog.prototype.options, { dialogClass: 'toolset-ui-dialog' }); } if(typeof Toolset.add_qt_editor_buttons!=='function'){ Toolset.add_qt_editor_buttons=function (qt_instance, editor_instance){ var activeUrlEditor, html; QTags._buttonsInit(); var editorInstance={}; editorInstance[qt_instance.id]=editor_instance; for (var button_name in qt_instance.theButtons){ if(qt_instance.theButtons.hasOwnProperty(button_name)){ qt_instance.theButtons[button_name].old_callback=qt_instance.theButtons[button_name].callback; if(qt_instance.theButtons[button_name].id=='img'){ qt_instance.theButtons[button_name].callback=function (element, canvas, ed){ var t=this, id=jQuery(canvas).attr('id'), selection=editorInstance[id].getSelection(), e="http://", g=prompt(quicktagsL10n.enterImageURL, e), f=prompt(quicktagsL10n.enterImageDescription, ""); t.tagStart='' + f + ''; selection=t.tagStart; t.closeTag(element, ed); editorInstance[id].replaceSelection(selection, 'end'); editorInstance[id].focus(); }}else if(qt_instance.theButtons[button_name].id=='close'){ }else if(qt_instance.theButtons[button_name].id=='link'){ var t=this; qt_instance.theButtons[button_name].callback = function (b, c, d, e){ activeUrlEditor=c; var f, g=this; return "undefined"!=typeof wpLink ? void wpLink.open(d.id):(e||(e="http://"), void(g.isOpen(d)===!1 ? (f=prompt(quicktagsL10n.enterURL, e), f&&(g.tagStart='', a.TagButton.prototype.callback.call(g, b, c, d))):a.TagButton.prototype.callback.call(g, b, c, d))) }; jQuery('#wp-link-submit').off(); jQuery('#wp-link-submit').on('click', function (event){ event.preventDefault(); if(wpLink.isMCE()){ wpLink.mceUpdate(); }else{ var id=jQuery(activeUrlEditor).attr('id'), selection=editorInstance[id].getSelection(), inputs={}, attrs, text, title, html; inputs.wrap=jQuery('#wp-link-wrap'); inputs.backdrop=jQuery('#wp-link-backdrop'); if(jQuery('#link-target-checkbox').length > 0){ inputs.text=jQuery('#link-title-field'); attrs=wpLink.getAttrs(); text=inputs.text.val(); if(!attrs.href){ return; } html='/g, '>').replace(/"/g, '"'); html +=' title="' + title + '"'; } html +='>'; html +=text||selection; html +=''; t.tagStart=html; selection=t.tagStart; }else{ inputs.text=jQuery('#wp-link-text'); attrs=wpLink.getAttrs(); text=inputs.text.val(); if(!attrs.href){ return; } html=' 0){ if(!t.tagEnd){ selection=selection + t.tagStart; }else{ selection=t.tagStart + selection + t.tagEnd; }}else{ if(!t.tagEnd){ selection=t.tagStart; }else if(t.isOpen(ed)===false){ selection=t.tagStart; t.openTag(element, ed); }else{ selection=t.tagEnd; t.closeTag(element, ed); }} editorInstance[id].replaceSelection(selection, 'end'); editorInstance[id].focus(); }} }} }}; var DDLayout=DDLayout||{}; DDLayout.ThemeIntegrations=DDLayout.ThemeIntegrations||{}; DDLayout.ThemeIntegrations.LayoutsLoader=function($){ var self=this, $button=$('.js-ddl-layouts-loader-button'), $messages=$('.js-upload-layouts-message'), loader=new WPV_Toolset.Utils.Loader; self.init=function(){ self.handle_click(); }; self.handle_click=function(){ $button.on('click', function(event){ event.preventDefault(); self.do_ajax(event); }); }; self.do_ajax=function(event){ var params={ 'ddl_load_default_layouts':DDLayout_Theme.ThemeIntegrationsSettings.ddl_load_default_layouts, 'action':'ddl_load_default_layouts' }, load; if(pagenow!='toolset_page_toolset-settings'){ load=loader.loadShow($(event.target), true); load.css({ "top": "14px", "position": "absolute", "right": "16px" }); }else{ $(document).trigger('js-toolset-event-update-setting-section-triggered'); } WPV_Toolset.Utils.do_ajax_post(params,{ success:function(response){ self.messages(event, 'info', DDLayout_Theme.ThemeIntegrationsSettings.layouts_loaded); }, error:function(response){ self.messages(event, 'error', response.error) }, fail:function(errorThrown){ self.messages(event, 'error', errorThrown) }, always:function(args){ loader.loadHide(); }}); }; self.messages=function(event, type, message){ if(typeof $(event.target).data('settings')==='undefined'){ if(type==='info'){ window.location.href=DDLayout_Theme.ThemeIntegrationsSettings.redirect_to + "&layouts_loaded=true"; }else{ window.location.href=DDLayout_Theme.ThemeIntegrationsSettings.redirect_to + "&layouts_loaded=false"; } return; }else if($(event.target).data('settings')==='yes'){ $(document).trigger('js-toolset-event-update-setting-section-completed'); if(type==='info'){ var parent=$(event.target).parent(); $(event.target).remove(); parent.append(''); }} }; self.init(); }; (function ($){ $(function (){ DDLayout.ThemeIntegrations.LayoutsLoader.call({}, $); }); }(jQuery)); if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){return a(b.target).is(this)?b.handleObj.handler.apply(this,arguments):void 0}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.5",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a(f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.5",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target);d.hasClass("btn")||(d=d.closest(".btn")),b.call(d,"toggle"),a(c.target).is('input[type="radio"]')||a(c.target).is('input[type="checkbox"]')||c.preventDefault()}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.5",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));return a>this.$items.length-1||0>a?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){return this.sliding?void 0:this.slide("next")},c.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.5",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger("hidden.bs.dropdown",f))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.5",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger("shown.bs.dropdown",h)}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),c.isInStateTrue()?void 0:(clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide())},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;(e||!/destroy|hide/.test(b))&&(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.5",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.5",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.5",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return c>e?"top":!1;if("bottom"==this.affixed)return null!=c?e+this.unpin<=f.top?!1:"bottom":a-d>=e+g?!1:"bottom";var h=null==this.affixed,i=h?e:f.top,j=h?g:b;return null!=c&&c>=e?"top":null!=d&&i+j>=a-d?"bottom":!1},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); !function(a){a(window).load(function(){a(".header-background-image img").css({"min-height":a(".js-header-height").height(),"margin-bottom":-a(".js-header-height").height()}),a(window).resize(function(){a(".header-background-image img").css({"min-height":a(".js-header-height").height(),"margin-bottom":-a(".js-header-height").height()})})})}(jQuery); document.addEventListener("touchstart", function(){}, true); jQuery(function(){ jQuery('.scrolllink').click(function(){ if(location.pathname.replace(/^\//,'')==this.pathname.replace(/^\//,'')&&location.hostname==this.hostname){ var target=jQuery(this.hash); target=target.length ? target:jQuery('[name=' + this.hash.slice(1) +']'); if(target.length){ jQuery('html, body').animate({ scrollTop: target.offset().top-150 }, 1000); return false; }} }); }); (function(){ jQuery(".panel").on("show.bs.collapse hide.bs.collapse", function(e){ if(e.type=='show'){ jQuery(this).addClass('active'); }else{ jQuery(this).removeClass('active'); }}); }).call(this); !function(a){"function"==typeof define&&define.amd?define(["jquery","./core"],a):a(jQuery)}(function(a){function b(a){for(var b,c;a.length&&a[0]!==document;){if(b=a.css("position"),("absolute"===b||"relative"===b||"fixed"===b)&&(c=parseInt(a.css("zIndex"),10),!isNaN(c)&&0!==c))return c;a=a.parent()}return 0}function c(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},a.extend(this._defaults,this.regional[""]),this.regional.en=a.extend(!0,{},this.regional[""]),this.regional["en-US"]=a.extend(!0,{},this.regional.en),this.dpDiv=d(a("
"))}function d(b){var c="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return b.delegate(c,"mouseout",function(){a(this).removeClass("ui-state-hover"),this.className.indexOf("ui-datepicker-prev")!==-1&&a(this).removeClass("ui-datepicker-prev-hover"),this.className.indexOf("ui-datepicker-next")!==-1&&a(this).removeClass("ui-datepicker-next-hover")}).delegate(c,"mouseover",e)}function e(){a.datepicker._isDisabledDatepicker(g.inline?g.dpDiv.parent()[0]:g.input[0])||(a(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),a(this).addClass("ui-state-hover"),this.className.indexOf("ui-datepicker-prev")!==-1&&a(this).addClass("ui-datepicker-prev-hover"),this.className.indexOf("ui-datepicker-next")!==-1&&a(this).addClass("ui-datepicker-next-hover"))}function f(b,c){a.extend(b,c);for(var d in c)null==c[d]&&(b[d]=c[d]);return b}a.extend(a.ui,{datepicker:{version:"1.11.4"}});var g;return a.extend(c.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){return f(this._defaults,a||{}),this},_attachDatepicker:function(b,c){var d,e,f;d=b.nodeName.toLowerCase(),e="div"===d||"span"===d,b.id||(this.uuid+=1,b.id="dp"+this.uuid),f=this._newInst(a(b),e),f.settings=a.extend({},c||{}),"input"===d?this._connectDatepicker(b,f):e&&this._inlineDatepicker(b,f)},_newInst:function(b,c){var e=b[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:e,input:b,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:c,dpDiv:c?d(a("
")):this.dpDiv}},_connectDatepicker:function(b,c){var d=a(b);c.append=a([]),c.trigger=a([]),d.hasClass(this.markerClassName)||(this._attachments(d,c),d.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(c),a.data(b,"datepicker",c),c.settings.disabled&&this._disableDatepicker(b))},_attachments:function(b,c){var d,e,f,g=this._get(c,"appendText"),h=this._get(c,"isRTL");c.append&&c.append.remove(),g&&(c.append=a(""+g+""),b[h?"before":"after"](c.append)),b.unbind("focus",this._showDatepicker),c.trigger&&c.trigger.remove(),d=this._get(c,"showOn"),"focus"!==d&&"both"!==d||b.focus(this._showDatepicker),"button"!==d&&"both"!==d||(e=this._get(c,"buttonText"),f=this._get(c,"buttonImage"),c.trigger=a(this._get(c,"buttonImageOnly")?a("").addClass(this._triggerClass).attr({src:f,alt:e,title:e}):a("").addClass(this._triggerClass).html(f?a("").attr({src:f,alt:e,title:e}):e)),b[h?"before":"after"](c.trigger),c.trigger.click(function(){return a.datepicker._datepickerShowing&&a.datepicker._lastInput===b[0]?a.datepicker._hideDatepicker():a.datepicker._datepickerShowing&&a.datepicker._lastInput!==b[0]?(a.datepicker._hideDatepicker(),a.datepicker._showDatepicker(b[0])):a.datepicker._showDatepicker(b[0]),!1}))},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b,c,d,e,f=new Date(2009,11,20),g=this._get(a,"dateFormat");g.match(/[DM]/)&&(b=function(a){for(c=0,d=0,e=0;ec&&(c=a[e].length,d=e);return d},f.setMonth(b(this._get(a,g.match(/MM/)?"monthNames":"monthNamesShort"))),f.setDate(b(this._get(a,g.match(/DD/)?"dayNames":"dayNamesShort"))+20-f.getDay())),a.input.attr("size",this._formatDate(a,f).length)}},_inlineDatepicker:function(b,c){var d=a(b);d.hasClass(this.markerClassName)||(d.addClass(this.markerClassName).append(c.dpDiv),a.data(b,"datepicker",c),this._setDate(c,this._getDefaultDate(c),!0),this._updateDatepicker(c),this._updateAlternate(c),c.settings.disabled&&this._disableDatepicker(b),c.dpDiv.css("display","block"))},_dialogDatepicker:function(b,c,d,e,g){var h,i,j,k,l,m=this._dialogInst;return m||(this.uuid+=1,h="dp"+this.uuid,this._dialogInput=a(""),this._dialogInput.keydown(this._doKeyDown),a("body").append(this._dialogInput),m=this._dialogInst=this._newInst(this._dialogInput,!1),m.settings={},a.data(this._dialogInput[0],"datepicker",m)),f(m.settings,e||{}),c=c&&c.constructor===Date?this._formatDate(m,c):c,this._dialogInput.val(c),this._pos=g?g.length?g:[g.pageX,g.pageY]:null,this._pos||(i=document.documentElement.clientWidth,j=document.documentElement.clientHeight,k=document.documentElement.scrollLeft||document.body.scrollLeft,l=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[i/2-100+k,j/2-150+l]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),m.settings.onSelect=d,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),a.blockUI&&a.blockUI(this.dpDiv),a.data(this._dialogInput[0],"datepicker",m),this},_destroyDatepicker:function(b){var c,d=a(b),e=a.data(b,"datepicker");d.hasClass(this.markerClassName)&&(c=b.nodeName.toLowerCase(),a.removeData(b,"datepicker"),"input"===c?(e.append.remove(),e.trigger.remove(),d.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):"div"!==c&&"span"!==c||d.removeClass(this.markerClassName).empty(),g===e&&(g=null))},_enableDatepicker:function(b){var c,d,e=a(b),f=a.data(b,"datepicker");e.hasClass(this.markerClassName)&&(c=b.nodeName.toLowerCase(),"input"===c?(b.disabled=!1,f.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):"div"!==c&&"span"!==c||(d=e.children("."+this._inlineClass),d.children().removeClass("ui-state-disabled"),d.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=a.map(this._disabledInputs,function(a){return a===b?null:a}))},_disableDatepicker:function(b){var c,d,e=a(b),f=a.data(b,"datepicker");e.hasClass(this.markerClassName)&&(c=b.nodeName.toLowerCase(),"input"===c?(b.disabled=!0,f.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):"div"!==c&&"span"!==c||(d=e.children("."+this._inlineClass),d.children().addClass("ui-state-disabled"),d.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=a.map(this._disabledInputs,function(a){return a===b?null:a}),this._disabledInputs[this._disabledInputs.length]=b)},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;b-1},_doKeyUp:function(b){var c,d=a.datepicker._getInst(b.target);if(d.input.val()!==d.lastVal)try{c=a.datepicker.parseDate(a.datepicker._get(d,"dateFormat"),d.input?d.input.val():null,a.datepicker._getFormatConfig(d)),c&&(a.datepicker._setDateFromField(d),a.datepicker._updateAlternate(d),a.datepicker._updateDatepicker(d))}catch(e){}return!0},_showDatepicker:function(c){if(c=c.target||c,"input"!==c.nodeName.toLowerCase()&&(c=a("input",c.parentNode)[0]),!a.datepicker._isDisabledDatepicker(c)&&a.datepicker._lastInput!==c){var d,e,g,h,i,j,k;d=a.datepicker._getInst(c),a.datepicker._curInst&&a.datepicker._curInst!==d&&(a.datepicker._curInst.dpDiv.stop(!0,!0),d&&a.datepicker._datepickerShowing&&a.datepicker._hideDatepicker(a.datepicker._curInst.input[0])),e=a.datepicker._get(d,"beforeShow"),g=e?e.apply(c,[c,d]):{},g!==!1&&(f(d.settings,g),d.lastVal=null,a.datepicker._lastInput=c,a.datepicker._setDateFromField(d),a.datepicker._inDialog&&(c.value=""),a.datepicker._pos||(a.datepicker._pos=a.datepicker._findPos(c),a.datepicker._pos[1]+=c.offsetHeight),h=!1,a(c).parents().each(function(){return h|="fixed"===a(this).css("position"),!h}),i={left:a.datepicker._pos[0],top:a.datepicker._pos[1]},a.datepicker._pos=null,d.dpDiv.empty(),d.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),a.datepicker._updateDatepicker(d),i=a.datepicker._checkOffset(d,i,h),d.dpDiv.css({position:a.datepicker._inDialog&&a.blockUI?"static":h?"fixed":"absolute",display:"none",left:i.left+"px",top:i.top+"px"}),d.inline||(j=a.datepicker._get(d,"showAnim"),k=a.datepicker._get(d,"duration"),d.dpDiv.css("z-index",b(a(c))+1),a.datepicker._datepickerShowing=!0,a.effects&&a.effects.effect[j]?d.dpDiv.show(j,a.datepicker._get(d,"showOptions"),k):d.dpDiv[j||"show"](j?k:null),a.datepicker._shouldFocusInput(d)&&d.input.focus(),a.datepicker._curInst=d))}},_updateDatepicker:function(b){this.maxRows=4,g=b,b.dpDiv.empty().append(this._generateHTML(b)),this._attachHandlers(b);var c,d=this._getNumberOfMonths(b),f=d[1],h=17,i=b.dpDiv.find("."+this._dayOverClass+" a");i.length>0&&e.apply(i.get(0)),b.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),f>1&&b.dpDiv.addClass("ui-datepicker-multi-"+f).css("width",h*f+"em"),b.dpDiv[(1!==d[0]||1!==d[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),b.dpDiv[(this._get(b,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),b===a.datepicker._curInst&&a.datepicker._datepickerShowing&&a.datepicker._shouldFocusInput(b)&&b.input.focus(),b.yearshtml&&(c=b.yearshtml,setTimeout(function(){c===b.yearshtml&&b.yearshtml&&b.dpDiv.find("select.ui-datepicker-year:first").replaceWith(b.yearshtml),c=b.yearshtml=null},0))},_shouldFocusInput:function(a){return a.input&&a.input.is(":visible")&&!a.input.is(":disabled")&&!a.input.is(":focus")},_checkOffset:function(b,c,d){var e=b.dpDiv.outerWidth(),f=b.dpDiv.outerHeight(),g=b.input?b.input.outerWidth():0,h=b.input?b.input.outerHeight():0,i=document.documentElement.clientWidth+(d?0:a(document).scrollLeft()),j=document.documentElement.clientHeight+(d?0:a(document).scrollTop());return c.left-=this._get(b,"isRTL")?e-g:0,c.left-=d&&c.left===b.input.offset().left?a(document).scrollLeft():0,c.top-=d&&c.top===b.input.offset().top+h?a(document).scrollTop():0,c.left-=Math.min(c.left,c.left+e>i&&i>e?Math.abs(c.left+e-i):0),c.top-=Math.min(c.top,c.top+f>j&&j>f?Math.abs(f+h):0),c},_findPos:function(b){for(var c,d=this._getInst(b),e=this._get(d,"isRTL");b&&("hidden"===b.type||1!==b.nodeType||a.expr.filters.hidden(b));)b=b[e?"previousSibling":"nextSibling"];return c=a(b).offset(),[c.left,c.top]},_hideDatepicker:function(b){var c,d,e,f,g=this._curInst;!g||b&&g!==a.data(b,"datepicker")||this._datepickerShowing&&(c=this._get(g,"showAnim"),d=this._get(g,"duration"),e=function(){a.datepicker._tidyDialog(g)},a.effects&&(a.effects.effect[c]||a.effects[c])?g.dpDiv.hide(c,a.datepicker._get(g,"showOptions"),d,e):g.dpDiv["slideDown"===c?"slideUp":"fadeIn"===c?"fadeOut":"hide"](c?d:null,e),c||e(),this._datepickerShowing=!1,f=this._get(g,"onClose"),f&&f.apply(g.input?g.input[0]:null,[g.input?g.input.val():"",g]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),a.blockUI&&(a.unblockUI(),a("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(b){if(a.datepicker._curInst){var c=a(b.target),d=a.datepicker._getInst(c[0]);(c[0].id===a.datepicker._mainDivId||0!==c.parents("#"+a.datepicker._mainDivId).length||c.hasClass(a.datepicker.markerClassName)||c.closest("."+a.datepicker._triggerClass).length||!a.datepicker._datepickerShowing||a.datepicker._inDialog&&a.blockUI)&&(!c.hasClass(a.datepicker.markerClassName)||a.datepicker._curInst===d)||a.datepicker._hideDatepicker()}},_adjustDate:function(b,c,d){var e=a(b),f=this._getInst(e[0]);this._isDisabledDatepicker(e[0])||(this._adjustInstDate(f,c+("M"===d?this._get(f,"showCurrentAtPos"):0),d),this._updateDatepicker(f))},_gotoToday:function(b){var c,d=a(b),e=this._getInst(d[0]);this._get(e,"gotoCurrent")&&e.currentDay?(e.selectedDay=e.currentDay,e.drawMonth=e.selectedMonth=e.currentMonth,e.drawYear=e.selectedYear=e.currentYear):(c=new Date,e.selectedDay=c.getDate(),e.drawMonth=e.selectedMonth=c.getMonth(),e.drawYear=e.selectedYear=c.getFullYear()),this._notifyChange(e),this._adjustDate(d)},_selectMonthYear:function(b,c,d){var e=a(b),f=this._getInst(e[0]);f["selected"+("M"===d?"Month":"Year")]=f["draw"+("M"===d?"Month":"Year")]=parseInt(c.options[c.selectedIndex].value,10),this._notifyChange(f),this._adjustDate(e)},_selectDay:function(b,c,d,e){var f,g=a(b);a(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(g[0])||(f=this._getInst(g[0]),f.selectedDay=f.currentDay=a("a",e).html(),f.selectedMonth=f.currentMonth=c,f.selectedYear=f.currentYear=d,this._selectDate(b,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear)))},_clearDate:function(b){var c=a(b);this._selectDate(c,"")},_selectDate:function(b,c){var d,e=a(b),f=this._getInst(e[0]);c=null!=c?c:this._formatDate(f),f.input&&f.input.val(c),this._updateAlternate(f),d=this._get(f,"onSelect"),d?d.apply(f.input?f.input[0]:null,[c,f]):f.input&&f.input.trigger("change"),f.inline?this._updateDatepicker(f):(this._hideDatepicker(),this._lastInput=f.input[0],"object"!=typeof f.input[0]&&f.input.focus(),this._lastInput=null)},_updateAlternate:function(b){var c,d,e,f=this._get(b,"altField");f&&(c=this._get(b,"altFormat")||this._get(b,"dateFormat"),d=this._getDate(b),e=this.formatDate(c,d,this._getFormatConfig(b)),a(f).each(function(){a(this).val(e)}))},noWeekends:function(a){var b=a.getDay();return[b>0&&b<6,""]},iso8601Week:function(a){var b,c=new Date(a.getTime());return c.setDate(c.getDate()+4-(c.getDay()||7)),b=c.getTime(),c.setMonth(0),c.setDate(1),Math.floor(Math.round((b-c)/864e5)/7)+1},parseDate:function(b,c,d){if(null==b||null==c)throw"Invalid arguments";if(c="object"==typeof c?c.toString():c+"",""===c)return null;var e,f,g,h,i=0,j=(d?d.shortYearCutoff:null)||this._defaults.shortYearCutoff,k="string"!=typeof j?j:(new Date).getFullYear()%100+parseInt(j,10),l=(d?d.dayNamesShort:null)||this._defaults.dayNamesShort,m=(d?d.dayNames:null)||this._defaults.dayNames,n=(d?d.monthNamesShort:null)||this._defaults.monthNamesShort,o=(d?d.monthNames:null)||this._defaults.monthNames,p=-1,q=-1,r=-1,s=-1,t=!1,u=function(a){var c=e+1-1)for(q=1,r=s;;){if(f=this._getDaysInMonth(p,q-1),r<=f)break;q++,r-=f}if(h=this._daylightSavingAdjust(new Date(p,q-1,r)),h.getFullYear()!==p||h.getMonth()+1!==q||h.getDate()!==r)throw"Invalid date";return h},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*60*60*1e7,formatDate:function(a,b,c){if(!b)return"";var d,e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,g=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,h=(c?c.monthNames:null)||this._defaults.monthNames,i=function(b){var c=d+112?a.getHours()+2:0),a):null},_setDate:function(a,b,c){var d=!b,e=a.selectedMonth,f=a.selectedYear,g=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=g.getDate(),a.drawMonth=a.selectedMonth=a.currentMonth=g.getMonth(),a.drawYear=a.selectedYear=a.currentYear=g.getFullYear(),e===a.selectedMonth&&f===a.selectedYear||c||this._notifyChange(a),this._adjustInstDate(a),a.input&&a.input.val(d?"":this._formatDate(a))},_getDate:function(a){var b=!a.currentYear||a.input&&""===a.input.val()?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return b},_attachHandlers:function(b){var c=this._get(b,"stepMonths"),d="#"+b.id.replace(/\\\\/g,"\\");b.dpDiv.find("[data-handler]").map(function(){var b={prev:function(){a.datepicker._adjustDate(d,-c,"M")},next:function(){a.datepicker._adjustDate(d,+c,"M")},hide:function(){a.datepicker._hideDatepicker()},today:function(){a.datepicker._gotoToday(d)},selectDay:function(){return a.datepicker._selectDay(d,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return a.datepicker._selectMonthYear(d,this,"M"),!1},selectYear:function(){return a.datepicker._selectMonthYear(d,this,"Y"),!1}};a(this).bind(this.getAttribute("data-event"),b[this.getAttribute("data-handler")])})},_generateHTML:function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O=new Date,P=this._daylightSavingAdjust(new Date(O.getFullYear(),O.getMonth(),O.getDate())),Q=this._get(a,"isRTL"),R=this._get(a,"showButtonPanel"),S=this._get(a,"hideIfNoPrevNext"),T=this._get(a,"navigationAsDateFormat"),U=this._getNumberOfMonths(a),V=this._get(a,"showCurrentAtPos"),W=this._get(a,"stepMonths"),X=1!==U[0]||1!==U[1],Y=this._daylightSavingAdjust(a.currentDay?new Date(a.currentYear,a.currentMonth,a.currentDay):new Date(9999,9,9)),Z=this._getMinMaxDate(a,"min"),$=this._getMinMaxDate(a,"max"),_=a.drawMonth-V,aa=a.drawYear;if(_<0&&(_+=12,aa--),$)for(b=this._daylightSavingAdjust(new Date($.getFullYear(),$.getMonth()-U[0]*U[1]+1,$.getDate())),b=Z&&bb;)_--,_<0&&(_=11,aa--);for(a.drawMonth=_,a.drawYear=aa,c=this._get(a,"prevText"),c=T?this.formatDate(c,this._daylightSavingAdjust(new Date(aa,_-W,1)),this._getFormatConfig(a)):c,d=this._canAdjustMonth(a,-1,aa,_)?"
"+c+"":S?"":""+c+"",e=this._get(a,"nextText"),e=T?this.formatDate(e,this._daylightSavingAdjust(new Date(aa,_+W,1)),this._getFormatConfig(a)):e,f=this._canAdjustMonth(a,1,aa,_)?""+e+"":S?"":""+e+"",g=this._get(a,"currentText"),h=this._get(a,"gotoCurrent")&&a.currentDay?Y:P,g=T?this.formatDate(g,h,this._getFormatConfig(a)):g,i=a.inline?"":"",j=R?"
"+(Q?i:"")+(this._isInRange(a,h)?"":"")+(Q?"":i)+"
":"",k=parseInt(this._get(a,"firstDay"),10),k=isNaN(k)?0:k,l=this._get(a,"showWeek"),m=this._get(a,"dayNames"),n=this._get(a,"dayNamesMin"),o=this._get(a,"monthNames"),p=this._get(a,"monthNamesShort"),q=this._get(a,"beforeShowDay"),r=this._get(a,"showOtherMonths"),s=this._get(a,"selectOtherMonths"),t=this._getDefaultDate(a),u="",w=0;w1)switch(y){case 0:B+=" ui-datepicker-group-first",A=" ui-corner-"+(Q?"right":"left");break;case U[1]-1:B+=" ui-datepicker-group-last",A=" ui-corner-"+(Q?"left":"right");break;default:B+=" ui-datepicker-group-middle",A=""}B+="'>"}for(B+="
"+(/all|left/.test(A)&&0===w?Q?f:d:"")+(/all|right/.test(A)&&0===w?Q?d:f:"")+this._generateMonthYearHeader(a,_,aa,Z,$,w>0||y>0,o,p)+"
",C=l?"":"",v=0;v<7;v++)D=(v+k)%7,C+="";for(B+=C+"",E=this._getDaysInMonth(aa,_),aa===a.selectedYear&&_===a.selectedMonth&&(a.selectedDay=Math.min(a.selectedDay,E)),F=(this._getFirstDayOfMonth(aa,_)-k+7)%7,G=Math.ceil((F+E)/7),H=X&&this.maxRows>G?this.maxRows:G,this.maxRows=H,I=this._daylightSavingAdjust(new Date(aa,_,1-F)),J=0;J",K=l?"":"",v=0;v<7;v++)L=q?q.apply(a.input?a.input[0]:null,[I]):[!0,""],M=I.getMonth()!==_,N=M&&!s||!L[0]||Z&&I$,K+="",I.setDate(I.getDate()+1),I=this._daylightSavingAdjust(I);B+=K+""}_++,_>11&&(_=0,aa++),B+="
"+this._get(a,"weekHeader")+"=5?" class='ui-datepicker-week-end'":"")+">"+n[D]+"
"+this._get(a,"calculateWeek")(I)+""+(M&&!r?" ":N?""+I.getDate()+"":""+I.getDate()+"")+"
"+(X?"
"+(U[0]>0&&y===U[1]-1?"
":""):""),x+=B}u+=x}return u+=j,a._keyEvent=!1,u},_generateMonthYearHeader:function(a,b,c,d,e,f,g,h){var i,j,k,l,m,n,o,p,q=this._get(a,"changeMonth"),r=this._get(a,"changeYear"),s=this._get(a,"showMonthAfterYear"),t="
",u="";if(f||!q)u+=""+g[b]+"";else{ for(i=d&&d.getFullYear()===c,j=e&&e.getFullYear()===c,u+=""}if(s||(t+=u+(!f&&q&&r?"":" ")),!a.yearshtml)if(a.yearshtml="",f||!r)t+=""+c+"";else{for(l=this._get(a,"yearRange").split(":"),m=(new Date).getFullYear(),n=function(a){var b=a.match(/c[+\-].*/)?c+parseInt(a.substring(1),10):a.match(/[+\-].*/)?m+parseInt(a,10):parseInt(a,10);return isNaN(b)?m:b},o=n(l[0]),p=Math.max(o,n(l[1]||"")),o=d?Math.max(o,d.getFullYear()):o,p=e?Math.min(p,e.getFullYear()):p,a.yearshtml+="",t+=a.yearshtml,a.yearshtml=null}return t+=this._get(a,"yearSuffix"),s&&(t+=(!f&&q&&r?"":" ")+u),t+="
"},_adjustInstDate:function(a,b,c){var d=a.drawYear+("Y"===c?b:0),e=a.drawMonth+("M"===c?b:0),f=Math.min(a.selectedDay,this._getDaysInMonth(d,e))+("D"===c?b:0),g=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(d,e,f)));a.selectedDay=g.getDate(),a.drawMonth=a.selectedMonth=g.getMonth(),a.drawYear=a.selectedYear=g.getFullYear(),"M"!==c&&"Y"!==c||this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min"),d=this._getMinMaxDate(a,"max"),e=c&&bd?d:e},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){var b=this._get(a,"numberOfMonths");return null==b?[1,1]:"number"==typeof b?[1,b]:b},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return new Date(a,b,1).getDay()},_canAdjustMonth:function(a,b,c,d){var e=this._getNumberOfMonths(a),f=this._daylightSavingAdjust(new Date(c,d+(b<0?b:e[0]*e[1]),1));return b<0&&f.setDate(this._getDaysInMonth(f.getFullYear(),f.getMonth())),this._isInRange(a,f)},_isInRange:function(a,b){var c,d,e=this._getMinMaxDate(a,"min"),f=this._getMinMaxDate(a,"max"),g=null,h=null,i=this._get(a,"yearRange");return i&&(c=i.split(":"),d=(new Date).getFullYear(),g=parseInt(c[0],10),h=parseInt(c[1],10),c[0].match(/[+\-].*/)&&(g+=d),c[1].match(/[+\-].*/)&&(h+=d)),(!e||b.getTime()>=e.getTime())&&(!f||b.getTime()<=f.getTime())&&(!g||b.getFullYear()>=g)&&(!h||b.getFullYear()<=h)},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");return b="string"!=typeof b?b:(new Date).getFullYear()%100+parseInt(b,10),{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,d){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);var e=b?"object"==typeof b?b:this._daylightSavingAdjust(new Date(d,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),e,this._getFormatConfig(a))}}),a.fn.datepicker=function(b){if(!this.length)return this;a.datepicker.initialized||(a(document).mousedown(a.datepicker._checkExternalClick),a.datepicker.initialized=!0),0===a("#"+a.datepicker._mainDivId).length&&a("body").append(a.datepicker.dpDiv);var c=Array.prototype.slice.call(arguments,1);return"string"!=typeof b||"isDisabled"!==b&&"getDate"!==b&&"widget"!==b?"option"===b&&2===arguments.length&&"string"==typeof arguments[1]?a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this[0]].concat(c)):this.each(function(){"string"==typeof b?a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this].concat(c)):a.datepicker._attachDatepicker(this,b)}):a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this[0]].concat(c))},a.datepicker=new c,a.datepicker.initialized=!1,a.datepicker.uuid=(new Date).getTime(),a.datepicker.version="1.11.4",a.datepicker}); !function(a){a.suggest=function(b,c){function d(){var a=o.offset();p.css({top:a.top+b.offsetHeight+"px",left:a.left+"px"})}function e(a){if(/27$|38$|40$/.test(a.keyCode)&&p.is(":visible")||/^13$|^9$/.test(a.keyCode)&&k())switch(a.preventDefault&&a.preventDefault(),a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0,a.returnValue=!1,a.keyCode){case 38:n();break;case 40:m();break;case 9:case 13:l();break;case 27:p.hide()}else o.val().length!=r&&(q&&clearTimeout(q),q=setTimeout(f,c.delay),r=o.val().length)}function f(){var b,d,e=a.trim(o.val());c.multiple&&(b=e.lastIndexOf(c.multipleSep),-1!=b&&(e=a.trim(e.substr(b+c.multipleSep.length)))),e.length>=c.minchars?(cached=g(e),cached?i(cached.items):a.get(c.source,{q:e},function(a){p.hide(),d=j(a,e),i(d),h(e,d,a.length)})):p.hide()}function g(a){var b;for(b=0;bc.maxCacheSize;)e=s.pop(),t-=e.size;s.push({q:a,size:d,items:b}),t+=d}function i(b){var e,f="";if(b){if(!b.length)return void p.hide();for(d(),e=0;e"+b[e]+"";p.html(f).show(),p.children("li").mouseover(function(){p.children("li").removeClass(c.selectClass),a(this).addClass(c.selectClass)}).click(function(a){a.preventDefault(),a.stopPropagation(),l()})}}function j(b,d){var e,f,g=[],h=b.split(c.delimiter);for(e=0;e'+a+""}),g[g.length]=f);return g}function k(){var a;return p.is(":visible")?(a=p.children("li."+c.selectClass),a.length||(a=!1),a):!1}function l(){$currentResult=k(),$currentResult&&(c.multiple?(-1!=o.val().indexOf(c.multipleSep)?$currentVal=o.val().substr(0,o.val().lastIndexOf(c.multipleSep)+c.multipleSep.length)+" ":$currentVal="",o.val($currentVal+$currentResult.text()+c.multipleSep+" "),o.focus()):o.val($currentResult.text()),p.hide(),o.trigger("change"),c.onSelect&&c.onSelect.apply(o[0]))}function m(){$currentResult=k(),$currentResult?$currentResult.removeClass(c.selectClass).next().addClass(c.selectClass):p.children("li:first-child").addClass(c.selectClass)}function n(){var a=k();a?a.removeClass(c.selectClass).prev().addClass(c.selectClass):p.children("li:last-child").addClass(c.selectClass)}var o,p,q,r,s,t;o=a(b).attr("autocomplete","off"),p=a("
    "),q=!1,r=0,s=[],t=0,p.addClass(c.resultsClass).appendTo("body"),d(),a(window).on("load",d).on("resize",d),o.blur(function(){setTimeout(function(){p.hide()},200)}),o.keydown(e)},a.fn.suggest=function(b,c){return b?(c=c||{},c.multiple=c.multiple||!1,c.multipleSep=c.multipleSep||",",c.source=b,c.delay=c.delay||100,c.resultsClass=c.resultsClass||"ac_results",c.selectClass=c.selectClass||"ac_over",c.matchClass=c.matchClass||"ac_match",c.minchars=c.minchars||2,c.delimiter=c.delimiter||"\n",c.onSelect=c.onSelect||!1,c.maxCacheSize=c.maxCacheSize||65536,this.each(function(){new a.suggest(this,c)}),this):void 0}}(jQuery); var toolsetForms=toolsetForms||{}; var wptCallbacks={}; wptCallbacks.validationInit=jQuery.Callbacks('unique'); wptCallbacks.addRepetitive=jQuery.Callbacks('unique'); wptCallbacks.removeRepetitive=jQuery.Callbacks('unique'); wptCallbacks.conditionalCheck=jQuery.Callbacks('unique'); wptCallbacks.reset=jQuery.Callbacks('unique'); jQuery(document).ready(function(){ if(typeof wptValidation!=='undefined'){ wptCallbacks.validationInit.add(function (){ wptValidation.init(); }); } if(typeof wptCond!=='undefined'){ wptCond.init(); }else{ wptCallbacks.validationInit.fire(); }}); jQuery(document).on('cred_form_ready', function (event, event_data){ jQuery('.cred-taxonomy', jQuery('form.is_submitted')).each(function (){ var $parent=jQuery(this); setTimeout(function (){ jQuery('input.wpt-taxonomy-add-new', $parent).click(); }, 50); }); }); var wptFilters={}; function add_filter(name, callback, priority, args_num){ var args=_.defaults(arguments, ['', '', 10, 2]); if(typeof wptFilters[name]==='undefined') wptFilters[name]={}; if(typeof wptFilters[name][args[2]]==='undefined') wptFilters[name][args[2]]=[]; wptFilters[name][args[2]].push([callback, args[3]]); } function apply_filters(name, val){ if(typeof wptFilters[name]==='undefined') return val; var args=_.rest(_.toArray(arguments)); _.each(wptFilters[name], function (funcs, priority){ _.each(funcs, function ($callback){ var _args=args.slice(0, $callback[1]); args[0]=$callback[0].apply(null, _args); }); }); return args[0]; } function add_action(name, callback, priority, args_num){ add_filter.apply(null, arguments); } function do_action(name){ if(typeof wptFilters[name]==='undefined') return false; var args=_.rest(_.toArray(arguments)); _.each(wptFilters[name], function (funcs, priority){ _.each(funcs, function ($callback){ var _args=args.slice(0, $callback[1]); $callback[0].apply(null, _args); }); }); return true; } function showHideMostPopularButton(taxonomy, form){ var $button=jQuery('[name="sh_' + taxonomy + '"]', form); var $taxonomy_box=jQuery('.shmpt-' + taxonomy, form); var $tag_list=$taxonomy_box.find('.js-wpt-taxonomy-popular-add'); if(!$button.hasClass('js-wpt-taxonomy-popular-show-hide')) return true; if($tag_list.length > 0){ $button.show(); return true; }else{ $button.hide(); return false; }} jQuery(document).off('click', '.js-wpt-taxonomy-popular-show-hide', null); jQuery(document).off('click', '.js-wpt-taxonomy-popular-add', null); jQuery(document).off('click', '.js-wpt-taxonomy-add-new', null); jQuery(document).off('keypress', '.js-wpt-new-taxonomy-title', null); jQuery(document).on('click', '.js-wpt-taxonomy-popular-show-hide', function (){ showHideMostPopularTaxonomy(this); }); function showHideMostPopularTaxonomy(el){ var data_type_output=jQuery(el).data('output'); var taxonomy=jQuery(el).data('taxonomy'); var form=jQuery(el).closest('form'); jQuery('.shmpt-' + taxonomy, form).toggle(); if(data_type_output=='bootstrap'){ var curr=jQuery(el).text(); if(curr==jQuery(el).data('show-popular-text')){ jQuery(el).text(jQuery(el).data('hide-popular-text'), form); jQuery(el).addClass('btn-cancel').addClass('dashicons-dismiss').removeClass('dashicons-plus-alt'); }else{ jQuery(el).text(jQuery(el).data('show-popular-text'), form); jQuery(el).removeClass('btn-cancel').removeClass('dashicons-dismiss').addClass('dashicons-plus-alt'); }}else{ var curr=jQuery(el).val(); if(curr==jQuery(el).data('show-popular-text')){ jQuery(el).val(jQuery(el).data('hide-popular-text'), form).addClass('btn-cancel'); }else{ jQuery(el).val(jQuery(el).data('show-popular-text'), form).removeClass('btn-cancel'); }} } jQuery(document).on('click', '.js-wpt-taxonomy-popular-add', function (){ var $thiz=jQuery(this); var taxonomy=$thiz.data('taxonomy'); var slug=$thiz.data('slug'); var _name=$thiz.data('name'); setTaxonomyFromPopular(_name, taxonomy, this); return false; }); function setTaxonomyFromPopular(slug, taxonomy, $el){ var $form=jQuery($el).closest('form'); var tmp_tax=String(slug); if(typeof tmp_tax==="undefined"||tmp_tax.trim()=='') return; var tax=jQuery('input[name=' + taxonomy + ']', $form).val(); var arr=String(tax).split(','); if(jQuery.inArray(tmp_tax, arr)!==-1) return; var toadd=(tax=='') ? tmp_tax:tax + ',' + tmp_tax; jQuery('input[name=' + taxonomy + ']', $form).val(toadd); updateTaxonomies(taxonomy, $form); } function addTaxonomy(slug, taxonomy, $el){ var $form=jQuery($el).closest('form'); var curr=jQuery('input[name=tmp_' + taxonomy + ']', $form).val().trim(); if(''==curr){ jQuery('input[name=tmp_' + taxonomy + ']', $form).val(slug); setTaxonomy(taxonomy, $el); }else{ if(curr.indexOf(slug)==-1){ jQuery('input[name=tmp_' + taxonomy + ']', $form).val(curr + ',' + slug); setTaxonomy(taxonomy, $el); }} jQuery('input[name=tmp_' + taxonomy + ']', $form).val(''); } jQuery(document).on('click', '.js-wpt-taxonomy-add-new', function (){ var $thiz=jQuery(this), taxonomy=$thiz.data('taxonomy'); setTaxonomy(taxonomy, this); }); jQuery(document).on('keypress', '.js-wpt-new-taxonomy-title', function (e){ if(13===e.keyCode){ e.preventDefault(); var $thiz=jQuery(this), taxonomy=$thiz.data('taxonomy'), taxtype=$thiz.data('taxtype'); if(taxtype=='hierarchical'){ toolsetForms.cred_tax.add_taxonomy(taxonomy, this); }else{ setTaxonomy(taxonomy, this); }} }); function setTaxonomy(taxonomy, $el){ var $form=jQuery($el).closest('form'); var tmp_tax=jQuery('input[name=tmp_' + taxonomy + ']', $form).val(); var rex=/<\/?(a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdi|bdo|bgsound|big|blink|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|data|datalist|dd|del|details|dfn|dir|div|dl|dt|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h1|h2|h3|h4|h5|h6|head|header|hgroup|hr|html|i|iframe|img|input|ins|isindex|kbd|keygen|label|legend|li|link|listing|main|map|mark|marquee|menu|menuitem|meta|meter|nav|nobr|noframes|noscript|object|ol|optgroup|option|output|p|param|plaintext|pre|progress|q|rp|rt|ruby|s|samp|script|section|select|small|source|spacer|span|strike|strong|style|sub|summary|sup|table|tbody|td|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr|xmp)\b[^<>]*>/ig; tmp_tax=_.escape(tmp_tax.replace(rex, "")).trim(); if(tmp_tax.trim()==''){ return; } var tax=jQuery('input[name=' + taxonomy + ']', $form).val(); var arr=tax.split(','); if(jQuery.inArray(tmp_tax, arr)!==-1) return; var toadd=(tax=='') ? tmp_tax:tax + ',' + tmp_tax; jQuery('input[name=' + taxonomy + ']', $form).val(toadd); jQuery('input[name=tmp_' + taxonomy + ']', $form).val(''); updateTaxonomies(taxonomy, $form); } function updateTaxonomies(taxonomy, $form){ var $taxonomies_selector=jQuery('input[name=' + taxonomy + ']', $form); var taxonomies=$taxonomies_selector.val(); jQuery('div.tagchecklist-' + taxonomy, $form).html(''); if(!taxonomies||(taxonomies&&taxonomies.trim()=='')){ return; } var toshow=taxonomies.split(','); var str=''; for (var i=0; i < toshow.length; i++){ var sh=toshow[i].trim(); if($taxonomies_selector.data('output')=='bootstrap'){ str +='' + sh + ' '; }else{ str +='X ' + sh + ''; }} jQuery('div.tagchecklist-' + taxonomy, $form).html(str); jQuery('div.tagchecklist-' + taxonomy + ' a', $form).bind('click', function (){ jQuery('input[name=' + taxonomy + ']', $form).val(''); var del=jQuery(this).data('wpcf-i'); var values=''; for (i=0; i < toshow.length; i++){ if(del==i){ continue; } if(values){ values +=','; } values +=toshow[i]; } jQuery('input[name=' + taxonomy + ']', $form).val(values); updateTaxonomies(taxonomy, $form); return false; }); } function initTaxonomies(values, taxonomy, url, fieldId){ var $form=jQuery('#' + fieldId.replace(/_field_\d+$/, '')).closest('form'); jQuery('div.tagchecklist-' + taxonomy, $form).html(values); jQuery('input[name=' + taxonomy + ']', $form).val(values); updateTaxonomies(taxonomy, $form); jQuery('input[name=tmp_' + taxonomy + ']', $form).suggest(wptoolset_taxonomy_settings.ajaxurl + '?action=wpt_suggest_taxonomy_term&taxonomy=' + taxonomy, { resultsClass: 'wpt-suggest-taxonomy-term', selectClass: 'wpt-suggest-taxonomy-term-select' } ); if(jQuery('input[name=tmp_' + taxonomy + ']', $form).val()!==""){ jQuery("input[name='new_tax_button_" + taxonomy + "']", $form).trigger("click"); }} toolsetForms.CRED_taxonomy=function (){ var self=this; self.init=function (){ self._new_taxonomy=new Array(); jQuery(document).ready(self._document_ready); }; self._document_ready=function (){ self._initialize_taxonomy_buttons(); self._initialize_hierachical(); }; self._initialize_hierachical=function (){ jQuery('.js-wpt-hierarchical-taxonomy-add-new-container').each(function(){ var $addNewContainer=jQuery(this), $form=$addNewContainer.closest('form'), $taxonomy=$addNewContainer.data('taxonomy'), $addNewShowHide=jQuery('.js-wpt-hierarchical-taxonomy-add-new-show-hide[data-taxonomy="' + $taxonomy + '"]', $form), $placeholder=jQuery('.js-taxonomy-hierarchical-button-placeholder[data-taxonomy="' + $taxonomy + '"]', $form); if($placeholder.length > 0){ $addNewShowHide .insertAfter($placeholder) .show(); $placeholder.replaceWith($addNewContainer); self._fill_parent_drop_down($form); }else{ $addNewContainer.remove(); $addNewShowHide.remove(); }}); }; self._fill_parent_drop_down=function($form){ jQuery('select.js-taxonomy-parent', $form).each(function (){ var $select=jQuery(this); jQuery(this).find('option').each(function (){ if(jQuery(this).val()!='-1'){ jQuery(this).remove(); }}); var taxonomy=jQuery(this).data('taxonomy'); jQuery('input[name="' + taxonomy + '\[\]"]', $form).each(function (){ var id=jQuery(this).attr('id'); var label=jQuery(this).data('value'); var level=jQuery(this).closest('ul').data('level'); var prefix=''; if(level){ prefix="\xA0\xA0" + Array(level).join("\xA0\xA0"); } $select.append(''); }); jQuery('select[name="' + taxonomy + '\[\]"]', $form).find('option').each(function (){ var id=jQuery(this).val(); var text=jQuery(this).text(); $select.append(''); }); }); }; self._initialize_taxonomy_buttons=function (){ jQuery('.js-taxonomy-button-placeholder').each(function (){ var $placeholder=jQuery(this); var label=jQuery(this).attr('data-label'); var taxonomy=jQuery(this).data('taxonomy'); var form=jQuery(this).closest('form'); var $buttons=jQuery('[name="sh_' + taxonomy + '"]', form); var selectors=[]; if($buttons.length){ $buttons.each(function (){ var $button=jQuery(this, form); if(label){ $button.val(label); } $placeholder.replaceWith($button); if($button.hasClass('js-wpt-taxonomy-popular-show-hide')){ if(showHideMostPopularButton(taxonomy, form)){ $button.show(); }}else{ $button.show(); } selectors.push($button.data('after-selector')); }); }}); }; self.add_new_show_hide=function (taxonomy, $button){ var $form=jQuery($button).closest('form'); var $add_wrap=jQuery(".js-wpt-hierarchical-taxonomy-add-new-" + taxonomy, $form); if($add_wrap.is(":visible")){ $add_wrap.hide(); }else{ $add_wrap.show(); } self.hide_parent_button_if_no_terms(taxonomy, $button); }; self.add_taxonomy_controls_bindings=function (){ jQuery('.js-wpt-hierarchical-taxonomy-add-new').on('click', function (){ var $thiz=jQuery(this), taxonomy=$thiz.data('taxonomy'); self.add_taxonomy(taxonomy, this); }); jQuery('.js-wpt-hierarchical-taxonomy-add-new-show-hide').on('click', function (){ var $button=jQuery(this), $taxonomy=$button.data('taxonomy'), $output=$button.data('output'); if($output=='bootstrap'){ if($button.text()==$button.data('close')){ $button .html($button.data('open')) .removeClass('dashicons-dismiss') .addClass('dashicons-plus-alt'); }else{ $button .html($button.data('close')) .removeClass('dashicons-plus-alt') .addClass('dashicons-dismiss'); }}else{ if($button.val()==$button.data('close')){ $button .val($button.data('open')) .removeClass('btn-cancel'); }else{ $button .val($button.data('close')) .addClass('btn-cancel'); }} self.add_new_show_hide($taxonomy, this); }); }; self.terms_exist=function (taxonomy, $button){ var form=jQuery($button).closest('form'); var build_what=jQuery($button).data('build_what'), parent=jQuery('[name="new_tax_select_' + taxonomy + '"]', form).val(); if(build_what==='checkboxes'){ var first_checkbox=jQuery('input[name="' + taxonomy + '\[\]"][data-parent="' + parent + '"]:first', form); return first_checkbox.length > 0; }else{ var first_option=jQuery('select[name="' + taxonomy + '\[\]"]', form).find('option[data-parent="' + parent + '"]:first'); return first_option.length > 0; }}; self.hide_parent_button_if_no_terms=function (taxonomy, $button){ var $form=jQuery($button).closest('form'); var number_of_options=[]; jQuery('[name="new_tax_select_' + taxonomy + '"] option', $form).each(function (){ number_of_options++; }); if(number_of_options > 1){ jQuery('[name="new_tax_select_' + taxonomy + '"]', $form).prop('disabled', false); }else{ jQuery('[name="new_tax_select_' + taxonomy + '"]', $form).prop('disabled', true); }}; self.add_taxonomy=function (taxonomy, $button){ var $form=jQuery($button).closest('form'); var dataTypeOutput=jQuery($button).data('output'); var isBootstrap=('bootstrap'===dataTypeOutput); var new_taxonomy=jQuery('[name="new_tax_text_' + taxonomy + '"]', $form).val(); var build_what=jQuery($button).data('build_what'); new_taxonomy=new_taxonomy.trim(); if(new_taxonomy===''){ return; } var exists=false; jQuery('input[name="' + taxonomy + '\[\]"]').each(function (){ var id=jQuery(this).attr('id'); var label=jQuery(this).data('value'); if(new_taxonomy===label){ exists=true; self._flash_it(jQuery(this).parent('label')); }}); jQuery('select[name="' + taxonomy + '\[\]"]', $form).find('option').each(function (){ if(new_taxonomy===jQuery(this).text()){ exists=true; self._flash_it(jQuery(this)); }}); if(exists){ jQuery('[name="new_tax_text_' + taxonomy + '"]', $form).val(''); return; } var parent=jQuery('[name="new_tax_select_' + taxonomy + '"]', $form).val(), add_position=null, add_before=true, $div_fields_wrap=jQuery('div[data-item_name="taxonomyhierarchical-' + taxonomy + '"]', $form), level=0; if(build_what==='checkboxes'){ jQuery('div[data-item_name="taxonomyhierarchical-' + taxonomy + '"] li input[type=checkbox]', $form).each(function (){ if(this.value==parent||this.value==new_taxonomy){ $div_fields_wrap=jQuery(this).parent(); }}); var new_checkbox=""; if(isBootstrap){ new_checkbox='
  • '; }else{ new_checkbox='
  • '; } var $first_checkbox=jQuery('input[name="' + taxonomy + '\[\]"][data-parent="' + parent + '"]:first', $form); if($first_checkbox.length==0){ level=jQuery('input[name="' + taxonomy + '\[\]"][value="' + parent + '"]', $form).closest('ul').data('level'); level++; new_checkbox='
      ' + new_checkbox + '
    '; if(isBootstrap){ jQuery(new_checkbox).insertAfter($div_fields_wrap); }else{ jQuery(new_checkbox).appendTo($div_fields_wrap); }}else{ add_position=$first_checkbox.closest('li'); jQuery(new_checkbox).insertBefore(add_position); } jQuery('[name="new_tax_select_' + taxonomy + '"]', $form).show(); }else if(build_what==='select'){ jQuery('select[name="' + taxonomy + '\[\]"]', $form).show(); var label=''; var indent=''; var $first_option=jQuery('select[name="' + taxonomy + '\[\]"]', $form).find('option[data-parent="' + parent + '"]:first', $form); if($first_option.length==0){ $first_option=jQuery('select[name="' + taxonomy + '\[\]"]', $form).find('option[value="' + parent + '"]:first', $form); add_before=false; label=$first_option.text(); for (var i=0; i < label.length; i++){ if(label[i]=='\xA0'){ indent +='\xA0'; }else{ break; }} indent +='\xA0'; indent +='\xA0'; add_position=jQuery('select[name="' + taxonomy + '\[\]"]', $form); }else{ add_position=$first_option; label=$first_option.text(); for (var i=0; i < label.length; i++){ if(label[i]=='\xA0'){ indent +='\xA0'; }else{ break; }} } if(add_position){ var new_option=''; if(add_before){ jQuery(new_option).insertBefore(add_position); }else{ jQuery(new_option).appendTo(add_position); }} jQuery('[name="new_tax_select_' + taxonomy + '"]', $form).show() } self._update_hierachy(taxonomy, new_taxonomy, $form); jQuery('[name="new_tax_text_' + taxonomy + '"]', $form).val(''); self._fill_parent_drop_down($form); }; self._update_hierachy=function (taxonomy, new_taxonomy, $form){ var $new_taxonomy_input=jQuery('input[name="' + taxonomy + '_hierarchy"]', $form); if($new_taxonomy_input.length <=0){ jQuery('').insertAfter(jQuery('[name="new_tax_text_' + taxonomy + '"]', $form)); $new_taxonomy_input=jQuery('input[name="' + taxonomy + '_hierarchy"]', $form); } if(typeof self._new_taxonomy[taxonomy]==='undefined'){ self._new_taxonomy[taxonomy]=new Array(); } var parent=jQuery('[name="new_tax_select_' + taxonomy + '"]', $form).val(); self._new_taxonomy[taxonomy].push(parent + ',' + new_taxonomy); var value=''; for (var i=0; i < self._new_taxonomy[taxonomy].length; i++){ value +='{' + self._new_taxonomy[taxonomy][i] + '}'; } value=$new_taxonomy_input.val() + value; $new_taxonomy_input.val(value); }; self._flash_it=function ($element){ $element.fadeOut(300).fadeIn(300).fadeOut(300).fadeIn(300); }; self.init(); setTimeout(self.add_taxonomy_controls_bindings, 300); }; toolsetForms.cred_tax=new toolsetForms.CRED_taxonomy(); jQuery(function (){ var keyStop={ 8: ":not(input:text, textarea, input:file, input:password)", 13: "input:text, input:password", end: null }; jQuery(document).bind("keydown", function (event){ var $thiz_selector=keyStop[event.which], $thiz_target=jQuery(event.target); if($thiz_target.closest("form.cred-form").length && $thiz_selector!==undefined && $thiz_target.is($thiz_selector) ){ event.preventDefault(); } return true; }); }); var wptDate=(function ($){ var _tempConditions, _tempField, is_datepicker_style_loaded=false; function init(parent, options){ if($.isFunction($.fn.datepicker)){ $('input.js-wpt-date', $(parent)).each(function (index){ if(!$(this).hasClass('hasDatepicker')){ if($(this).attr('id').indexOf('cred_form')!=-1){ if(typeof(options)!=='undefined'&&options.hasOwnProperty('source')&&options.source=='cred_form_ready_init'){ wptDate.add($(this)); }}else{ wptDate.add($(this)); }}else{ wptDate.maybeLoadDatepickerStyle(); }}); } $(document).on('click', '.js-wpt-date-clear', function (){ var thiz=$(this), thiz_close, el, el_aux, el_select; if(thiz.closest('.js-wpt-field-item').length > 0){ thiz_close=thiz.closest('.js-wpt-field-item'); el_aux=thiz_close.find('.js-wpt-date-auxiliar'); el=thiz_close.find('.js-wpt-date'); el_select=thiz_close.find('select'); }else if(thiz.closest('.wpt-repctl').length > 0){ thiz_close=thiz.closest('.wpt-repctl'); el_aux=thiz_close.find('.js-wpt-date-auxiliar'); el=thiz_close.find('.js-wpt-date'); el_select=thiz_close.find('select'); }else if(thiz.closest('.js-wpt-field-items').length > 0){ thiz_close=thiz.closest('.js-wpt-field-items'); el_aux=thiz_close.find('.js-wpt-date-auxiliar'); el=thiz_close.find('.js-wpt-date'); el_select=thiz_close.find('select'); }else{ el_aux=thiz.closest('.js-wpt-field-items'); el=thiz.closest('.js-wpt-date'); el_select=thiz.closest('select'); } el_aux.val('').trigger('change').trigger('wptDateSelect'); el.val(''); el_select.val('0'); thiz.hide(); }); } function add(el){ if(el.hasClass('js-wpv-date-readonly')){ if(!el.hasClass('js-wpv-date-readonly-added')){ el.addClass('js-wpv-date-readonly-added').after('' + wptDateData.readonly + ''); } return; } var rand_number=1 + Math.floor(Math.random() * 150), old_id=el.attr('id'); el.attr('id', old_id + '-' + rand_number); wptDate.maybeLoadDatepickerStyle(); return el.datepicker({ onSelect: function (dateText, inst){ var el_close, el_aux, el_clear; el.val(''); if(el.closest('.js-wpt-field-item').length > 0){ el_close=el.closest('.js-wpt-field-item'); el_aux=el_close.find('.js-wpt-date-auxiliar'); el_clear=el_close.find('.js-wpt-date-clear'); }else if(el.closest('.wpt-repctl').length > 0){ el_close=el.closest('.wpt-repctl'); el_aux=el_close.find('.js-wpt-date-auxiliar'); el_clear=el_close.find('.js-wpt-date-clear'); }else if(el.closest('.js-wpt-field-items').length > 0){ el_close=el.closest('.js-wpt-field-items'); el_aux=el_close.find('.js-wpt-date-auxiliar'); el_clear=el_close.find('.js-wpt-date-clear'); }else{ el_aux=el.closest('.js-wpt-field-items'); el_clear=el.closest('.js-wpt-date-clear'); } var data='date=' + dateText; data +='&date-format=' + wptDateData.dateFormatPhp; data +='&action=wpt_localize_extended_date'; $.post(wptDateData.ajaxurl, data, function (response){ response=$.parseJSON(response); if(el_aux.length > 0){ el_aux.val(response['timestamp']).trigger('wptDateSelect'); } el.val(response['display']); el_clear.css('display', 'inline-block'); el.prev('small.wpt-form-error').remove(); }); }, showOn: "both", buttonImage: wptDateData.buttonImage, buttonImageOnly: true, buttonText: wptDateData.buttonText, dateFormat: 'ddmmyy', changeMonth: true, changeYear: true, yearRange: wptDateData.yearMin + ':' + wptDateData.yearMax, beforeShow: function(input){ }}); } function ajaxConditional(formID, conditions, field){ _tempConditions=conditions; _tempField=field; wptCallbacks.conditionalCheck.add(wptDate.ajaxCheck); } function ajaxCheck(formID){ wptCallbacks.conditionalCheck.remove(wptDate.ajaxCheck); wptCond.ajaxCheck(formID, _tempField, _tempConditions); } function ignoreConditional(val){ if(''==val){ return '__ignore_negative'; } return val; } function bindConditionalChange($trigger, func, formID){ $trigger.on('wptDateSelect', func); return false; } function triggerAjax(func){ if($(this).val().length >=wptDateData.dateFormatPhp.length) func(); } function maybeLoadDatepickerStyle(){ if(! is_datepicker_style_loaded){ if(document.getElementById('js-toolset-datepicker-style')){ is_datepicker_style_loaded=true; }else{ var head=document.getElementsByTagName('head')[0], link=document.createElement('link'); link.id='js-toolset-datepicker-style'; link.rel='stylesheet'; link.type='text/css'; link.href=wptDateData.datepicker_style_url; link.media='all'; head.appendChild(link); is_datepicker_style_loaded=true; }} } return { init: init, add: add, ajaxConditional: ajaxConditional, ajaxCheck: ajaxCheck, ignoreConditional: ignoreConditional, bindConditionalChange: bindConditionalChange, triggerAjax: triggerAjax, maybeLoadDatepickerStyle: maybeLoadDatepickerStyle };})(jQuery); jQuery(document).ready(function (){ wptDate.init('body'); }); jQuery(document).on('cred_form_ready', function(evt, form_data){ wptDate.init("#" + form_data.form_id, { source: 'cred_form_ready_init' }); }); if('undefined'!=typeof (wptCallbacks)){ wptCallbacks.reset.add(function (parent){ wptDate.init(parent); }); wptCallbacks.addRepetitive.add(wptDate.init); } if('function'==typeof (add_filter)){ add_filter('conditional_value_date', wptDate.ignoreConditional, 10, 1); } if('function'==typeof (add_action)){ add_action('conditional_trigger_bind_date', wptDate.bindConditionalChange, 10, 3); }; (function(b,c){var a=function(){var m=Array.prototype.slice;var n={removeFilter:e,applyFilters:g,addFilter:h,removeAction:f,doAction:j,addAction:k};var p={actions:{},filters:{}};function k(s,t,r,q){if(typeof s==="string"&&typeof t==="function"){r=parseInt((r||10),10);i("actions",s,t,r,q)}return n}function j(){var q=m.call(arguments);var r=q.shift();if(typeof r==="string"){d("actions",r,q)}return n}function f(q,r){if(typeof q==="string"){o("actions",q,r)}return n}function h(s,t,r,q){if(typeof s==="string"&&typeof t==="function"){r=parseInt((r||10),10);i("filters",s,t,r,q)}return n}function g(){var q=m.call(arguments);var r=q.shift();if(typeof r==="string"){return d("filters",r,q)}return n}function e(q,r){if(typeof q==="string"){o("filters",q,r)}return n}function o(u,v,w,s){var q,t,r;if(!p[u][v]){return}if(!w){p[u][v]=[]}else{q=p[u][v];if(!s){for(r=q.length;r--;){if(q[r].callback===w){q.splice(r,1)}}}else{for(r=q.length;r--;){t=q[r];if(t.callback===w&&t.context===s){q.splice(r,1)}}}}}function i(t,v,w,s,r){var u={callback:w,priority:s,context:r};var q=p[t][v];if(q){q.push(u);q=l(q)}else{q=[u]}p[t][v]=q}function l(r){var v,t,s;for(var u=1,q=r.length;uv.priority){r[t]=r[t-1];--t}r[t]=v}return r}function d(u,v,s){var r=p[u][v],t,q;if(!r){return(u==="filters")?s[0]:false}q=r.length;if(u==="filters"){for(t=0;t').attr('type', 'hidden').appendTo(formID); jQuery('').attr('type', 'hidden').appendTo(formID); thiz.startLoading($form.find('.wpt-form-submit'), site_url); jQuery.ajax({ type: 'post', url: $form.attr('action'), data: $form.serialize(), dataType: 'json', complete: function (response){ thiz.stopLoading(); Toolset.hooks.doAction('cred_form_ajax_completed', formID); }, success: function (response){ if(response){ $form.replaceWith(response.output); if('ok'===response.result){ Toolset.hooks.doAction('cred_form_ajax_success', formID); }else{ Toolset.hooks.doAction('cred_form_ajax_error', formID); }} }, error: function (xhr, ajaxOptions, thrownError){ alert(credSettings.operation_ko); Toolset.hooks.doAction('cred_form_ajax_error', formID); }}); }}, startLoading: function ($selector_to_append, site_url){ var $body=jQuery("body"); $body.addClass("wpt-loading"); var loading_icon=site_url + this.loadingSpinnerImagePath; $selector_to_append.after(''); }, stopLoading: function (){ var $body=jQuery("body"); $body.removeClass("wpt-loading"); jQuery('.' + this.loadingSpinnerClass).remove(); }, onAjaxFormSubmit: function (formID){ $form_selector=jQuery(formID); this.enableSubmitForm($form_selector); this.initColorPicker($form_selector); if(window.hasOwnProperty('initialisedCREDForms')){ initialisedCREDForms=[]; } this.applyViewModelBindings(); this.activatePreviewMode(); this.reloadTinyMCE(); this.tryToReloadReCAPTCHA($form_selector); }, updateFormsPostID: function (){ this.getAllForms(); for (var single_form in this.credForms){ single_form=this.credForms[single_form]; var form_data=this.extractFormData(single_form); this.assignDynamicObservableID(form_data); }}, getAllForms: function (){ var document_forms=jQuery('.cred-form, .cred-user-form', document); for (var form_index in document_forms){ if(isNaN(form_index)){ break; } this.credForms.push(document_forms[form_index]); } return this.credForms; }, assignDynamicObservableID: function (form_data){ if(form_data.post_id_node!==undefined&&form_data.post_id_node!==null){ form_data.binding_property_name="post_id_observable_" + this.uniqueID() + this.uniqueID(); this[form_data.context_id][form_data.binding_property_name]=ko.observable(form_data.post_id); this[form_data.context_id][form_data.binding_property_name + "_submit"]=ko.computed(function (){ return (this[form_data.context_id][form_data.binding_property_name]()===undefined); }, this); jQuery(form_data.post_id_node).attr('data-bind', 'value: ' + form_data.binding_property_name); jQuery(form_data.form_submit_node).attr('disabled', 'disabled'); var cred_check_id_ajax_data={ action: 'check_post_id', post_id: form_data.post_id, form_id: form_data.form_id, binding_property_name: form_data.binding_property_name, form_index: form_data.binding_property_name, form_context_id: form_data.context_id }; this.messagesQueue[form_data.binding_property_name]=cred_check_id_ajax_data; }}, extractFormData: function (form){ var form_context_binding_id='cred_form_context_' + this.uniqueID(); this[form_context_binding_id]={}; jQuery(form).attr('data-bind', 'with: ' + form_context_binding_id); return { form_id: (jQuery(form).children("input[name='_cred_cred_prefix_form_id']") ? jQuery(form).children("input[name='_cred_cred_prefix_form_id']").val():null), post_id: (jQuery(form).children("input[name='_cred_cred_prefix_post_id']") ? jQuery(form).children("input[name='_cred_cred_prefix_post_id']").val():null), post_id_node: jQuery(form).children("input[name='_cred_cred_prefix_post_id']"), form_submit_node: jQuery(form).children('.wpt-form-submit'), context_id: form_context_binding_id };}, uniqueID: function (){ return Math.floor((1 + Math.random()) * 0x10000) .toString(16) .substring(1); }, initQueue: function (){ var queue_keys=Object.keys(this.messagesQueue); if(queue_keys.length > 0){ for (var key in queue_keys){ var message=this.messagesQueue[queue_keys[key]]; jQuery.post(cred_frontend_settings.ajaxurl, message, function (callback_data){ if(callback_data!=""&&callback_data!=0){ try { var callback_data=JSON.parse(callback_data); credFrontEndViewModel[callback_data.form_context_id][callback_data.observable_id](callback_data.pid); } catch (err){ console.error('Toolset Forms: Error parsing callback data for `check_post_id` '); }} }); }} }, initCREDFile: function (){ jQuery('.js-wpt-credfile-delete, .js-wpt-credfile-undo').on('click', function (e){ e.preventDefault(); var that=jQuery(this), credfile_action=that.data('action'), credfile_container=that.closest('.wpt-repctl'); if(credfile_container.length < 1){ credfile_container=that.closest('.js-wpt-field-items'); } var that_delete_button=jQuery('.js-wpt-credfile-delete', credfile_container), that_undo_button=jQuery('.js-wpt-credfile-undo', credfile_container), that_hidden_input=jQuery('.js-wpv-credfile-hidden', credfile_container), that_file_input=jQuery('.js-wpt-credfile-upload-file', credfile_container), that_preview=jQuery('.js-wpt-credfile-preview', credfile_container), that_existing_value=that_hidden_input.val(); var field_id=that_hidden_input.attr('name'); if(credfile_action=='delete'){ that_file_input.val('').prop('disabled', false).prop('alt', '').prop('res', '').show(); that_hidden_input.val('').prop('disabled', true); that_preview.hide(); if(that_existing_value!=''){ }else{ that_undo_button.hide(); } if(field_id=='_featured_image'){ jQuery('input[name="attachid_' + field_id + '"').val(''); }else{ if(that.closest('.js-wpt-repetitive').length > 0){ }else{ jQuery('#' + field_id).prop('disabled', false); }} if(jQuery('.js-wpt-credfile-preview > img', credfile_container).length > 0){ jQuery('.js-wpt-credfile-preview > img', credfile_container).remove(); } that_file_input.trigger('change'); }else if(credfile_action=='undo'){ that_file_input.prop('disabled', true).hide(); that_hidden_input.prop('disabled', false); that_file_input.trigger('change'); that_preview.show(); that_undo_button.hide(); if(field_id=='_featured_image') jQuery('#attachid_' + field_id).val(jQuery("input[name='_cred_cred_prefix_post_id']").val()); else { if(that.closest('.js-wpt-repetitive').length > 0){ } else jQuery('#' + field_id).prop('disabled', false); }} }); jQuery('.js-wpt-credfile-upload-file').on('change', function (e){ e.preventDefault(); var that=jQuery(this), credfile_container=that.closest('.wpt-repctl'); if(credfile_container.length < 1){ credfile_container=that.closest('.js-wpt-field-items'); } var that_delete_button=jQuery('.js-wpt-credfile-delete', credfile_container), that_undo_button=jQuery('.js-wpt-credfile-undo', credfile_container), that_hidden_input=jQuery('.js-wpv-credfile-hidden', credfile_container), that_preview=jQuery('.js-wpt-credfile-preview', credfile_container), that_existing_value=that_hidden_input.val(); if(that_existing_value===''||that_existing_value!=that.val()){ that_undo_button.hide(); }}); }, addAccessibilityIDs: function (){ var $cred_form_labels=jQuery('.cred-form .form-group label'); for (var form_label_index in $cred_form_labels){ if(isNaN(form_label_index)){ break; } var $form_label=jQuery($cred_form_labels[form_label_index]); var accessibility_id=this.uniqueID(); $input_array=[]; $input_array.push($form_label.parent().find(':input:not(:button)')); $input_array.push($form_label.parent().find('select')[0]); $input_array.push($form_label.parent().find('textarea')[0]); if($input_array.length > 0){ for (var input in $input_array){ if($input_array[input]!==undefined){ $input_array[input]=jQuery($input_array[input]); if($input_array[input].attr('id')!==undefined&&$input_array[input].attr('id')!==null&&$input_array[input].attr('id')!=""){ $form_label.attr('for', $input_array[input].attr('id')); }else{ $input_array[input].attr('id', accessibility_id); $form_label.attr('for', accessibility_id); }} }} }}, applyViewModelBindings: function (){ this.readyCREDForms=[]; for (var cred_form in this.credForms){ var original=ko.utils.domNodeDisposal['cleanExternalData']; ko.utils.domNodeDisposal['cleanExternalData']=function (){ }; ko.cleanNode(this.credForms[cred_form]); ko.utils.domNodeDisposal['cleanExternalData']=original; ko.applyBindings(this, this.credForms[cred_form]); var cred_form_id=jQuery(this.credForms[cred_form]).attr('id'); this.readyCREDForms.push(cred_form_id); jQuery('.js-wpt-validate', '#' + cred_form_id).removeClass('js-wpt-validate'); jQuery(document).trigger('cred_form_ready', { form_id: cred_form_id }); }}, activatePreviewMode: function (){ if(window.hasOwnProperty('cred_form_preview_mode')&&window.cred_form_preview_mode==true){ jQuery('#insert-media-button').prop('disabled', true); jQuery('.insert-media').prop('disabled', true); jQuery('.cred-form input[type="file"]').attr('onclick', 'return false'); jQuery('.cred-user-form input[type="file"]').attr('onclick', 'return false'); jQuery(document).on('toolset_repetitive_field_added', function (){ jQuery('input[type="file"]', $parent).attr('onclick', 'return false'); jQuery('input[type="file"]', $parent).attr('onclick', 'return false'); }); }}, initColorPicker: function ($form){ if(typeof(wptColorpicker)!=='undefined'){ wptColorpicker.init($form); }} }; (function (){ credFrontEndViewModel.updateFormsPostID(); setTimeout(function (){ var isPreview=jQuery('#lbl_preview').length > 0; if(!isPreview){ credFrontEndViewModel.applyViewModelBindings(); } credFrontEndViewModel.initCREDFile(); }, 200); setTimeout(function (){ credFrontEndViewModel.initQueue(); }, 300); jQuery(document).ready(function (){ credFrontEndViewModel.addAccessibilityIDs(); credFrontEndViewModel.activatePreviewMode(); jQuery(document.body).on('click', 'form.cred-form .wp-media-buttons > .button.insert-media.add_media, form.cred-user-form .wp-media-buttons > .button.insert-media.add_media', function (){ if(wp&&wp.hasOwnProperty('media')){ var $current_form=jQuery(this).closest('form'); var current_cred_form_post_id=jQuery("input[name='_cred_cred_prefix_post_id']", $current_form).val(); if($current_form && current_cred_form_post_id && wp.media.model.settings.post.id!==current_cred_form_post_id ){ wp.media.model.settings.post.id=current_cred_form_post_id; }} }); }); jQuery(document).on('cred_form_ready', function (evt, form_data){ var $form=jQuery("#" + form_data.form_id); jQuery('input[type="checkbox"][cred_generic="1"]').each(function (index, checkbox){ if(jQuery(checkbox).attr('default_checked')!=1){ jQuery(checkbox).prop('checked', false); }else{ jQuery(checkbox).prop('checked', true); }}); setTimeout(function (){ jQuery('.form-submit', $form).attr('disabled', false); }, 4); credFrontEndViewModel.initColorPicker($form); $form.off('submit', null); $form.on('submit', function (){ if(!credFrontEndViewModel.handleReCAPTCHAErrorMessage(jQuery(this))){ return false; }}); }); var boundOnAjaxFormSubmit=_.bind(credFrontEndViewModel.onAjaxFormSubmit, credFrontEndViewModel); Toolset.hooks.addAction('cred_form_ajax_completed', boundOnAjaxFormSubmit); var boundOnValidatedSubmitAjaxForm=_.bind(credFrontEndViewModel.onValidatedSubmitAjaxForm, credFrontEndViewModel); Toolset.hooks.addAction('toolset-form-onsubmit-validation-success', boundOnValidatedSubmitAjaxForm); var boundDisableSubmitForm=_.bind(credFrontEndViewModel.disableSubmitForm, credFrontEndViewModel); Toolset.hooks.addAction('toolset-ajax-submit', boundDisableSubmitForm); })(); var onLoadRecaptcha=function (){ jQuery.each(jQuery('.g-recaptcha'), function (i, recaptcha_selector){ var $current_form=jQuery(recaptcha_selector).closest('form'); credFrontEndViewModel.tryToReloadReCAPTCHA($current_form); }); }; var ToolsetCommon=ToolsetCommon||{}; ToolsetCommon.initSelect2Compatibility=function($){ if(!jQuery().toolset_select2) return jQuery.fn.toolset_select2_original=jQuery.fn.toolset_select2; jQuery.fn.toolset_select2=function(options, param){ if(typeof options=="string"){ ToolsetCommon.toolset_select2ExecMethods(this, options, param) }else if(typeof options=="object"){ if(jQuery(this)){ return ToolsetCommon.toolset_select2ConvertInputToSelect(jQuery(this), options); }}else if(options===null||options===undefined){ if(jQuery(this)){ return ToolsetCommon.toolset_select2ConvertInputToSelect(jQuery(this)); }} };}; ToolsetCommon.toolset_select2ConvertInputToSelect=function(el, options){ if(ToolsetCommon.toolset_select2ConversionRequired(el, options)&&typeof el[0]!="string"&&el[0]!==undefined){ if(jQuery(el).data("toolset_select2")) return el; var convertedEl=jQuery(""); if(options&&options.hasOwnProperty("tags")&&options.tags){ var hiddenInput=jQuery(""); } jQuery.each(jQuery(el).get(0).attributes, function(){ if(hiddenInput&&this.specified&&(this.name=="name"||this.name=="class")){ jQuery(hiddenInput).attr(this.name, this.value); } if(this.specified&&this.name!="type"){ jQuery(convertedEl).attr(this.name, this.value); }}); var dynamicClass=ToolsetCommon.addSelect2RandomClassName(convertedEl); var hiddenDynamicClass=ToolsetCommon.addSelect2RandomClassName(hiddenInput); jQuery(el).replaceWith(convertedEl); jQuery(el).remove(); if(hiddenInput){ jQuery(hiddenInput).insertAfter("."+dynamicClass); } try{ convertedEl=jQuery("."+dynamicClass).toolset_select2_original(options); }catch(err){ console.log(err.message); } if(options&&options.hasOwnProperty("tags")){ jQuery("."+dynamicClass).on("change", function(event){ var actualValue=jQuery(event.target).val(); if(actualValue&&actualValue.length > 0&&hiddenInput){ jQuery("."+hiddenDynamicClass).attr("value", actualValue.join(",")); }}); } return convertedEl; }else{ if(!jQuery(el).data("toolset_select2")){ var dynamicClass=ToolsetCommon.addSelect2RandomClassName(el); var convertedEl=null; try{ convertedEl=jQuery("."+dynamicClass).toolset_select2_original(options); }catch(err){ console.log(err.message); } return convertedEl; }else{ return el; }} }; ToolsetCommon.toolset_select2ConversionRequired=function(el, options){ if(!jQuery(el).hasClass("toolset_select2_converted")){ if(options&&options.hasOwnProperty("tags")){ jQuery(el).prop("multiple", "multiple"); options.multiple=true; if(options.tags instanceof Array&&options.tags.length > 0){ options.data=[]; options.tags.forEach(function(item){ options.data.push({ id: item, text: item }); }); options.tags=true; } return true; }else{ return (jQuery(el).prop("tagName")!=="SELECT"); }} }; ToolsetCommon.toolset_select2ExecMethods=function(el, method, param){ if(jQuery(el).data("toolset_select2")){ var elm_id=jQuery(el).attr("id"); try{ switch(method){ case "val": if(param!==undefined&¶m!==null){ jQuery(el).val(param).trigger("change"); }else{ return jQuery(el).val(); } break; case "enable": jQuery(el).prop("disabled", !param); break; case "data": jQuery(el).val(param.ID).trigger("change").trigger("toolset_select2:selecting"); break; case "close": if(jQuery(el).data("toolset_select2")!=null&&jQuery(el).data("toolset_select2")!=undefined){ jQuery(el).toolset_select2_original("close"); } break; case "open": if(jQuery(el).data("toolset_select2")!=null&&jQuery(el).data("toolset_select2")!=undefined){ jQuery(el).toolset_select2_original("open"); } break; case "destroy": case "destory": jQuery(el).removeClass("toolset_select2_converted"); jQuery(el).toolset_select2_original("destroy"); break; default: jQuery("#"+elm_id).toolset_select2_original(method, param); break; }}catch(err){ }} }; ToolsetCommon.addSelect2RandomClassName=function(el){ var className=("toolset_select2_prefix_" + (Math.round(Math.random() * (100000 - 99) + 99)).toString()); jQuery(el).addClass(className); jQuery(el).addClass("toolset_select2_converted"); return className; }; jQuery(document).ready(function($){ ToolsetCommon.initSelect2Compatibility(); }); (function (factory){ if(typeof define==='function'&&define.amd){ define(['jquery'], factory); }else if(typeof exports==='object'){ factory(require('jquery')); }else{ factory(jQuery); }}(function (jQuery){ var Toolset_S2 = (function (){ if(jQuery&&jQuery.fn&&jQuery.fn.toolset_select2&&jQuery.fn.toolset_select2.amd){ var Toolset_S2=jQuery.fn.toolset_select2.amd; } var Toolset_S2;(function (){ if(!Toolset_S2||!Toolset_S2.requirejs){ if(!Toolset_S2){ Toolset_S2={};}else{ require=Toolset_S2; } var requirejs, require, define; (function (undef){ var main, req, makeMap, handlers, defined={}, waiting={}, config={}, defining={}, hasOwn=Object.prototype.hasOwnProperty, aps=[].slice, jsSuffixRegExp=/\.js$/; function hasProp(obj, prop){ return hasOwn.call(obj, prop); } function normalize(name, baseName){ var nameParts, nameSegment, mapValue, foundMap, lastIndex, foundI, foundStarMap, starI, i, j, part, baseParts=baseName&&baseName.split("/"), map=config.map, starMap=(map&&map['*'])||{}; if(name&&name.charAt(0)==="."){ if(baseName){ name=name.split('/'); lastIndex=name.length - 1; if(config.nodeIdCompat&&jsSuffixRegExp.test(name[lastIndex])){ name[lastIndex]=name[lastIndex].replace(jsSuffixRegExp, ''); } name=baseParts.slice(0, baseParts.length - 1).concat(name); for (i=0; i < name.length; i +=1){ part=name[i]; if(part==="."){ name.splice(i, 1); i -=1; }else if(part===".."){ if(i===1&&(name[2]==='..'||name[0]==='..')){ break; }else if(i > 0){ name.splice(i - 1, 2); i -=2; }} } name=name.join("/"); }else if(name.indexOf('./')===0){ name=name.substring(2); }} if((baseParts||starMap)&&map){ nameParts=name.split('/'); for (i=nameParts.length; i > 0; i -=1){ nameSegment=nameParts.slice(0, i).join("/"); if(baseParts){ for (j=baseParts.length; j > 0; j -=1){ mapValue=map[baseParts.slice(0, j).join('/')]; if(mapValue){ mapValue=mapValue[nameSegment]; if(mapValue){ foundMap=mapValue; foundI=i; break; }} }} if(foundMap){ break; } if(!foundStarMap&&starMap&&starMap[nameSegment]){ foundStarMap=starMap[nameSegment]; starI=i; }} if(!foundMap&&foundStarMap){ foundMap=foundStarMap; foundI=starI; } if(foundMap){ nameParts.splice(0, foundI, foundMap); name=nameParts.join('/'); }} return name; } function makeRequire(relName, forceSync){ return function (){ var args=aps.call(arguments, 0); if(typeof args[0]!=='string'&&args.length===1){ args.push(null); } return req.apply(undef, args.concat([relName, forceSync])); };} function makeNormalize(relName){ return function (name){ return normalize(name, relName); };} function makeLoad(depName){ return function (value){ defined[depName]=value; };} function callDep(name){ if(hasProp(waiting, name)){ var args=waiting[name]; delete waiting[name]; defining[name]=true; main.apply(undef, args); } if(!hasProp(defined, name)&&!hasProp(defining, name)){ throw new Error('No ' + name); } return defined[name]; } function splitPrefix(name){ var prefix, index=name ? name.indexOf('!'):-1; if(index > -1){ prefix=name.substring(0, index); name=name.substring(index + 1, name.length); } return [prefix, name]; } makeMap=function (name, relName){ var plugin, parts=splitPrefix(name), prefix=parts[0]; name=parts[1]; if(prefix){ prefix=normalize(prefix, relName); plugin=callDep(prefix); } if(prefix){ if(plugin&&plugin.normalize){ name=plugin.normalize(name, makeNormalize(relName)); }else{ name=normalize(name, relName); }}else{ name=normalize(name, relName); parts=splitPrefix(name); prefix=parts[0]; name=parts[1]; if(prefix){ plugin=callDep(prefix); }} return { f: prefix ? prefix + '!' + name:name, n: name, pr: prefix, p: plugin };}; function makeConfig(name){ return function (){ return (config&&config.config&&config.config[name])||{};}; } handlers={ require: function (name){ return makeRequire(name); }, exports: function (name){ var e=defined[name]; if(typeof e!=='undefined'){ return e; }else{ return (defined[name]={}); }}, module: function (name){ return { id: name, uri: '', exports: defined[name], config: makeConfig(name) };}}; main=function (name, deps, callback, relName){ var cjsModule, depName, ret, map, i, args=[], callbackType=typeof callback, usingExports; relName=relName||name; if(callbackType==='undefined'||callbackType==='function'){ deps = !deps.length&&callback.length ? ['require', 'exports', 'module']:deps; for (i=0; i < deps.length; i +=1){ map=makeMap(deps[i], relName); depName=map.f; if(depName==="require"){ args[i]=handlers.require(name); }else if(depName==="exports"){ args[i]=handlers.exports(name); usingExports=true; }else if(depName==="module"){ cjsModule=args[i]=handlers.module(name); }else if(hasProp(defined, depName) || hasProp(waiting, depName) || hasProp(defining, depName)){ args[i]=callDep(depName); }else if(map.p){ map.p.load(map.n, makeRequire(relName, true), makeLoad(depName), {}); args[i]=defined[depName]; }else{ throw new Error(name + ' missing ' + depName); }} ret=callback ? callback.apply(defined[name], args):undefined; if(name){ if(cjsModule&&cjsModule.exports!==undef && cjsModule.exports!==defined[name]){ defined[name]=cjsModule.exports; }else if(ret!==undef||!usingExports){ defined[name]=ret; }} }else if(name){ defined[name]=callback; }}; requirejs=require=req=function (deps, callback, relName, forceSync, alt){ if(typeof deps==="string"){ if(handlers[deps]){ return handlers[deps](callback); } return callDep(makeMap(deps, callback).f); }else if(!deps.splice){ config=deps; if(config.deps){ req(config.deps, config.callback); } if(!callback){ return; } if(callback.splice){ deps=callback; callback=relName; relName=null; }else{ deps=undef; }} callback=callback||function (){}; if(typeof relName==='function'){ relName=forceSync; forceSync=alt; } if(forceSync){ main(undef, deps, callback, relName); }else{ setTimeout(function (){ main(undef, deps, callback, relName); }, 4); } return req; }; req.config=function (cfg){ return req(cfg); }; requirejs._defined=defined; define=function (name, deps, callback){ if(typeof name!=='string'){ throw new Error('See almond README: incorrect module build, no module name'); } if(!deps.splice){ callback=deps; deps=[]; } if(!hasProp(defined, name)&&!hasProp(waiting, name)){ waiting[name]=[name, deps, callback]; }}; define.amd={ jQuery: true };}()); Toolset_S2.requirejs=requirejs;Toolset_S2.require=require;Toolset_S2.define=define; }}()); Toolset_S2.define("almond", function(){}); Toolset_S2.define('jquery',[],function (){ var _$=jQuery||$; if(_$==null&&console&&console.error){ console.error('Select2: An instance of jQuery or a jQuery-compatible library was not ' + 'found. Make sure that you are including jQuery before Select2 on your ' + 'web page.' ); } return _$; }); Toolset_S2.define('toolset_select2/utils',[ 'jquery' ], function ($){ var Utils={}; Utils.Extend=function (ChildClass, SuperClass){ var __hasProp={}.hasOwnProperty; function BaseConstructor (){ this.constructor=ChildClass; } for (var key in SuperClass){ if(__hasProp.call(SuperClass, key)){ ChildClass[key]=SuperClass[key]; }} BaseConstructor.prototype=SuperClass.prototype; ChildClass.prototype=new BaseConstructor(); ChildClass.__super__=SuperClass.prototype; return ChildClass; }; function getMethods (theClass){ var proto=theClass.prototype; var methods=[]; for (var methodName in proto){ var m=proto[methodName]; if(typeof m!=='function'){ continue; } if(methodName==='constructor'){ continue; } methods.push(methodName); } return methods; } Utils.Decorate=function (SuperClass, DecoratorClass){ var decoratedMethods=getMethods(DecoratorClass); var superMethods=getMethods(SuperClass); function DecoratedClass (){ var unshift=Array.prototype.unshift; var argCount=DecoratorClass.prototype.constructor.length; var calledConstructor=SuperClass.prototype.constructor; if(argCount > 0){ unshift.call(arguments, SuperClass.prototype.constructor); calledConstructor=DecoratorClass.prototype.constructor; } calledConstructor.apply(this, arguments); } DecoratorClass.displayName=SuperClass.displayName; function ctr (){ this.constructor=DecoratedClass; } DecoratedClass.prototype=new ctr(); for (var m=0; m < superMethods.length; m++){ var superMethod=superMethods[m]; DecoratedClass.prototype[superMethod] = SuperClass.prototype[superMethod]; } var calledMethod=function (methodName){ var originalMethod=function (){}; if(methodName in DecoratedClass.prototype){ originalMethod=DecoratedClass.prototype[methodName]; } var decoratedMethod=DecoratorClass.prototype[methodName]; return function (){ var unshift=Array.prototype.unshift; unshift.call(arguments, originalMethod); return decoratedMethod.apply(this, arguments); };}; for (var d=0; d < decoratedMethods.length; d++){ var decoratedMethod=decoratedMethods[d]; DecoratedClass.prototype[decoratedMethod]=calledMethod(decoratedMethod); } return DecoratedClass; }; var Observable=function (){ this.listeners={};}; Observable.prototype.on=function (event, callback){ this.listeners=this.listeners||{}; if(event in this.listeners){ this.listeners[event].push(callback); }else{ this.listeners[event]=[callback]; }}; Observable.prototype.trigger=function (event){ var slice=Array.prototype.slice; var params=slice.call(arguments, 1); this.listeners=this.listeners||{}; if(params==null){ params=[]; } if(params.length===0){ params.push({}); } params[0]._type=event; if(event in this.listeners){ this.invoke(this.listeners[event], slice.call(arguments, 1)); } if('*' in this.listeners){ this.invoke(this.listeners['*'], arguments); }}; Observable.prototype.invoke=function (listeners, params){ for (var i=0, len=listeners.length; i < len; i++){ listeners[i].apply(this, params); }}; Utils.Observable=Observable; Utils.generateChars=function (length){ var chars=''; for (var i=0; i < length; i++){ var randomChar=Math.floor(Math.random() * 36); chars +=randomChar.toString(36); } return chars; }; Utils.bind=function (func, context){ return function (){ func.apply(context, arguments); };}; Utils._convertData=function (data){ for (var originalKey in data){ var keys=originalKey.split('-'); var dataLevel=data; if(keys.length===1){ continue; } for (var k=0; k < keys.length; k++){ var key=keys[k]; key=key.substring(0, 1).toLowerCase() + key.substring(1); if(!(key in dataLevel)){ dataLevel[key]={};} if(k==keys.length - 1){ dataLevel[key]=data[originalKey]; } dataLevel=dataLevel[key]; } delete data[originalKey]; } return data; }; Utils.hasScroll=function (index, el){ var $el=$(el); var overflowX=el.style.overflowX; var overflowY=el.style.overflowY; if(overflowX===overflowY && (overflowY==='hidden'||overflowY==='visible')){ return false; } if(overflowX==='scroll'||overflowY==='scroll'){ return true; } return ($el.innerHeight() < el.scrollHeight || $el.innerWidth() < el.scrollWidth); }; Utils.escapeMarkup=function (markup){ var replaceMap={ '\\': '\', '&': '&', '<': '<', '>': '>', '"': '"', '\'': ''', '/': '/' }; if(typeof markup!=='string'){ return markup; } return String(markup).replace(/[&<>"'\/\\]/g, function (match){ return replaceMap[match]; }); }; Utils.appendMany=function ($element, $nodes){ if($.fn.jquery.substr(0, 3)==='1.7'){ var $jqNodes=$(); $.map($nodes, function (node){ $jqNodes=$jqNodes.add(node); }); $nodes=$jqNodes; } $element.append($nodes); }; return Utils; }); Toolset_S2.define('toolset_select2/results',[ 'jquery', './utils' ], function ($, Utils){ function Results ($element, options, dataAdapter){ this.$element=$element; this.data=dataAdapter; this.options=options; Results.__super__.constructor.call(this); } Utils.Extend(Results, Utils.Observable); Results.prototype.render=function (){ var $results=$( '
      ' ); if(this.options.get('multiple')){ $results.attr('aria-multiselectable', 'true'); } this.$results=$results; return $results; }; Results.prototype.clear=function (){ this.$results.empty(); }; Results.prototype.displayMessage=function (params){ var escapeMarkup=this.options.get('escapeMarkup'); this.clear(); this.hideLoading(); var $message=$( '
    • ' ); var message=this.options.get('translations').get(params.message); $message.append(escapeMarkup( message(params.args) ) ); $message[0].className +=' toolset_select2-results__message'; this.$results.append($message); }; Results.prototype.hideMessages=function (){ this.$results.find('.toolset_select2-results__message').remove(); }; Results.prototype.append=function (data){ this.hideLoading(); var $options=[]; if(data.results==null||data.results.length===0){ if(this.$results.children().length===0){ this.trigger('results:message', { message: 'noResults' }); } return; } data.results=this.sort(data.results); for (var d=0; d < data.results.length; d++){ var item=data.results[d]; var $option=this.option(item); $options.push($option); } this.$results.append($options); }; Results.prototype.position=function ($results, $dropdown){ var $resultsContainer=$dropdown.find('.toolset_select2-results'); $resultsContainer.append($results); }; Results.prototype.sort=function (data){ var sorter=this.options.get('sorter'); return sorter(data); }; Results.prototype.highlightFirstItem=function (){ var $options=this.$results .find('.toolset_select2-results__option[aria-selected]'); var $selected=$options.filter('[aria-selected=true]'); if($selected.length > 0){ $selected.first().trigger('mouseenter'); }else{ $options.first().trigger('mouseenter'); } this.ensureHighlightVisible(); }; Results.prototype.setClasses=function (){ var self=this; this.data.current(function (selected){ var selectedIds=$.map(selected, function (s){ return s.id.toString(); }); var $options=self.$results .find('.toolset_select2-results__option[aria-selected]'); $options.each(function (){ var $option=$(this); var item=$.data(this, 'data'); var id='' + item.id; if((item.element!=null&&item.element.selected) || (item.element==null&&$.inArray(id, selectedIds) > -1)){ $option.attr('aria-selected', 'true'); }else{ $option.attr('aria-selected', 'false'); }}); }); }; Results.prototype.showLoading=function (params){ this.hideLoading(); var loadingMore=this.options.get('translations').get('searching'); var loading={ disabled: true, loading: true, text: loadingMore(params) }; var $loading=this.option(loading); $loading.className +=' loading-results'; this.$results.prepend($loading); }; Results.prototype.hideLoading=function (){ this.$results.find('.loading-results').remove(); }; Results.prototype.option=function (data){ var option=document.createElement('li'); option.className='toolset_select2-results__option'; var attrs={ 'role': 'treeitem', 'aria-selected': 'false' }; if(data.disabled){ delete attrs['aria-selected']; attrs['aria-disabled']='true'; } if(data.id==null){ delete attrs['aria-selected']; } if(data._resultId!=null){ option.id=data._resultId; } if(data.title){ option.title=data.title; } if(data.children){ attrs.role='group'; attrs['aria-label']=data.text; delete attrs['aria-selected']; } for (var attr in attrs){ var val=attrs[attr]; option.setAttribute(attr, val); } if(data.children){ var $option=$(option); var label=document.createElement('strong'); label.className='toolset_select2-results__group'; var $label=$(label); this.template(data, label); var $children=[]; for (var c=0; c < data.children.length; c++){ var child=data.children[c]; var $child=this.option(child); $children.push($child); } var $childrenContainer=$('
        ', { 'class': 'toolset_select2-results__options toolset_select2-results__options--nested' }); $childrenContainer.append($children); $option.append(label); $option.append($childrenContainer); }else{ this.template(data, option); } $.data(option, 'data', data); return option; }; Results.prototype.bind=function (container, $container){ var self=this; var id=container.id + '-results'; this.$results.attr('id', id); container.on('results:all', function (params){ self.clear(); self.append(params.data); if(container.isOpen()){ self.setClasses(); self.highlightFirstItem(); }}); container.on('results:append', function (params){ self.append(params.data); if(container.isOpen()){ self.setClasses(); }}); container.on('query', function (params){ self.hideMessages(); self.showLoading(params); }); container.on('select', function (){ if(!container.isOpen()){ return; } self.setClasses(); self.highlightFirstItem(); }); container.on('unselect', function (){ if(!container.isOpen()){ return; } self.setClasses(); self.highlightFirstItem(); }); container.on('open', function (){ self.$results.attr('aria-expanded', 'true'); self.$results.attr('aria-hidden', 'false'); self.setClasses(); self.ensureHighlightVisible(); }); container.on('close', function (){ self.$results.attr('aria-expanded', 'false'); self.$results.attr('aria-hidden', 'true'); self.$results.removeAttr('aria-activedescendant'); }); container.on('results:toggle', function (){ var $highlighted=self.getHighlightedResults(); if($highlighted.length===0){ return; } $highlighted.trigger('mouseup'); }); container.on('results:select', function (){ var $highlighted=self.getHighlightedResults(); if($highlighted.length===0){ return; } var data=$highlighted.data('data'); if($highlighted.attr('aria-selected')=='true'){ self.trigger('close', {}); }else{ self.trigger('select', { data: data }); }}); container.on('results:previous', function (){ var $highlighted=self.getHighlightedResults(); var $options=self.$results.find('[aria-selected]'); var currentIndex=$options.index($highlighted); if(currentIndex===0){ return; } var nextIndex=currentIndex - 1; if($highlighted.length===0){ nextIndex=0; } var $next=$options.eq(nextIndex); $next.trigger('mouseenter'); var currentOffset=self.$results.offset().top; var nextTop=$next.offset().top; var nextOffset=self.$results.scrollTop() + (nextTop - currentOffset); if(nextIndex===0){ self.$results.scrollTop(0); }else if(nextTop - currentOffset < 0){ self.$results.scrollTop(nextOffset); }}); container.on('results:next', function (){ var $highlighted=self.getHighlightedResults(); var $options=self.$results.find('[aria-selected]'); var currentIndex=$options.index($highlighted); var nextIndex=currentIndex + 1; if(nextIndex >=$options.length){ return; } var $next=$options.eq(nextIndex); $next.trigger('mouseenter'); var currentOffset=self.$results.offset().top + self.$results.outerHeight(false); var nextBottom=$next.offset().top + $next.outerHeight(false); var nextOffset=self.$results.scrollTop() + nextBottom - currentOffset; if(nextIndex===0){ self.$results.scrollTop(0); }else if(nextBottom > currentOffset){ self.$results.scrollTop(nextOffset); }}); container.on('results:focus', function (params){ params.element.addClass('toolset_select2-results__option--highlighted'); }); container.on('results:message', function (params){ self.displayMessage(params); }); if($.fn.mousewheel){ this.$results.on('mousewheel', function (e){ var top=self.$results.scrollTop(); var bottom=self.$results.get(0).scrollHeight - top + e.deltaY; var isAtTop=e.deltaY > 0&&top - e.deltaY <=0; var isAtBottom=e.deltaY < 0&&bottom <=self.$results.height(); if(isAtTop){ self.$results.scrollTop(0); e.preventDefault(); e.stopPropagation(); }else if(isAtBottom){ self.$results.scrollTop(self.$results.get(0).scrollHeight - self.$results.height() ); e.preventDefault(); e.stopPropagation(); }}); } this.$results.on('mouseup', '.toolset_select2-results__option[aria-selected]', function (evt){ var $this=$(this); var data=$this.data('data'); if($this.attr('aria-selected')==='true'){ if(self.options.get('multiple')){ self.trigger('unselect', { originalEvent: evt, data: data }); }else{ self.trigger('close', {}); } return; } self.trigger('select', { originalEvent: evt, data: data }); }); this.$results.on('mouseenter', '.toolset_select2-results__option[aria-selected]', function (evt){ var data=$(this).data('data'); self.getHighlightedResults() .removeClass('toolset_select2-results__option--highlighted'); self.trigger('results:focus', { data: data, element: $(this) }); }); }; Results.prototype.getHighlightedResults=function (){ var $highlighted=this.$results .find('.toolset_select2-results__option--highlighted'); return $highlighted; }; Results.prototype.destroy=function (){ this.$results.remove(); }; Results.prototype.ensureHighlightVisible=function (){ var $highlighted=this.getHighlightedResults(); if($highlighted.length===0){ return; } var $options=this.$results.find('[aria-selected]'); var currentIndex=$options.index($highlighted); var currentOffset=this.$results.offset().top; var nextTop=$highlighted.offset().top; var nextOffset=this.$results.scrollTop() + (nextTop - currentOffset); var offsetDelta=nextTop - currentOffset; nextOffset -=$highlighted.outerHeight(false) * 2; if(currentIndex <=2){ this.$results.scrollTop(0); }else if(offsetDelta > this.$results.outerHeight()||offsetDelta < 0){ this.$results.scrollTop(nextOffset); }}; Results.prototype.template=function (result, container){ var template=this.options.get('templateResult'); var escapeMarkup=this.options.get('escapeMarkup'); var content=template(result, container); if(content==null){ container.style.display='none'; }else if(typeof content==='string'){ container.innerHTML=escapeMarkup(content); }else{ $(container).append(content); }}; return Results; }); Toolset_S2.define('toolset_select2/keys',[ ], function (){ var KEYS={ BACKSPACE: 8, TAB: 9, ENTER: 13, SHIFT: 16, CTRL: 17, ALT: 18, ESC: 27, SPACE: 32, PAGE_UP: 33, PAGE_DOWN: 34, END: 35, HOME: 36, LEFT: 37, UP: 38, RIGHT: 39, DOWN: 40, DELETE: 46 }; return KEYS; }); Toolset_S2.define('toolset_select2/selection/base',[ 'jquery', '../utils', '../keys' ], function ($, Utils, KEYS){ function BaseSelection ($element, options){ this.$element=$element; this.options=options; BaseSelection.__super__.constructor.call(this); } Utils.Extend(BaseSelection, Utils.Observable); BaseSelection.prototype.render=function (){ var $selection=$( '' ); this._tabindex=0; if(this.$element.data('old-tabindex')!=null){ this._tabindex=this.$element.data('old-tabindex'); }else if(this.$element.attr('tabindex')!=null){ this._tabindex=this.$element.attr('tabindex'); } $selection.attr('title', this.$element.attr('title')); $selection.attr('tabindex', this._tabindex); this.$selection=$selection; return $selection; }; BaseSelection.prototype.bind=function (container, $container){ var self=this; var id=container.id + '-container'; var resultsId=container.id + '-results'; this.container=container; this.$selection.on('focus', function (evt){ self.trigger('focus', evt); }); this.$selection.on('blur', function (evt){ self._handleBlur(evt); }); this.$selection.on('keydown', function (evt){ self.trigger('keypress', evt); if(evt.which===KEYS.SPACE){ evt.preventDefault(); }}); container.on('results:focus', function (params){ self.$selection.attr('aria-activedescendant', params.data._resultId); }); container.on('selection:update', function (params){ self.update(params.data); }); container.on('open', function (){ self.$selection.attr('aria-expanded', 'true'); self.$selection.attr('aria-owns', resultsId); self._attachCloseHandler(container); }); container.on('close', function (){ self.$selection.attr('aria-expanded', 'false'); self.$selection.removeAttr('aria-activedescendant'); self.$selection.removeAttr('aria-owns'); self.$selection.focus(); self._detachCloseHandler(container); }); container.on('enable', function (){ self.$selection.attr('tabindex', self._tabindex); }); container.on('disable', function (){ self.$selection.attr('tabindex', '-1'); }); }; BaseSelection.prototype._handleBlur=function (evt){ var self=this; window.setTimeout(function (){ if((document.activeElement==self.$selection[0]) || ($.contains(self.$selection[0], document.activeElement)) ){ return; } self.trigger('blur', evt); }, 1); }; BaseSelection.prototype._attachCloseHandler=function (container){ var self=this; $(document.body).on('mousedown.toolset_select2.' + container.id, function (e){ var $target=$(e.target); var $select=$target.closest('.toolset_select2'); var $all=$('.toolset_select2.toolset_select2-container--open'); $all.each(function (){ var $this=$(this); if(this==$select[0]){ return; } var $element=$this.data('element'); $element.toolset_select2('close'); }); }); }; BaseSelection.prototype._detachCloseHandler=function (container){ $(document.body).off('mousedown.toolset_select2.' + container.id); }; BaseSelection.prototype.position=function ($selection, $container){ var $selectionContainer=$container.find('.selection'); $selectionContainer.append($selection); }; BaseSelection.prototype.destroy=function (){ this._detachCloseHandler(this.container); }; BaseSelection.prototype.update=function (data){ throw new Error('The `update` method must be defined in child classes.'); }; return BaseSelection; }); Toolset_S2.define('toolset_select2/selection/single',[ 'jquery', './base', '../utils', '../keys' ], function ($, BaseSelection, Utils, KEYS){ function SingleSelection (){ SingleSelection.__super__.constructor.apply(this, arguments); } Utils.Extend(SingleSelection, BaseSelection); SingleSelection.prototype.render=function (){ var $selection=SingleSelection.__super__.render.call(this); $selection.addClass('toolset_select2-selection--single'); $selection.html('' + '' + '' + '' ); return $selection; }; SingleSelection.prototype.bind=function (container, $container){ var self=this; SingleSelection.__super__.bind.apply(this, arguments); var id=container.id + '-container'; this.$selection.find('.toolset_select2-selection__rendered').attr('id', id); this.$selection.attr('aria-labelledby', id); this.$selection.on('mousedown', function (evt){ if(evt.which!==1){ return; } self.trigger('toggle', { originalEvent: evt }); }); this.$selection.on('focus', function (evt){ }); this.$selection.on('blur', function (evt){ }); container.on('focus', function (evt){ if(!container.isOpen()){ self.$selection.focus(); }}); container.on('selection:update', function (params){ self.update(params.data); }); }; SingleSelection.prototype.clear=function (){ this.$selection.find('.toolset_select2-selection__rendered').empty(); }; SingleSelection.prototype.display=function (data, container){ var template=this.options.get('templateSelection'); var escapeMarkup=this.options.get('escapeMarkup'); return escapeMarkup(template(data, container)); }; SingleSelection.prototype.selectionContainer=function (){ return $(''); }; SingleSelection.prototype.update=function (data){ if(data.length===0){ this.clear(); return; } var selection=data[0]; var $rendered=this.$selection.find('.toolset_select2-selection__rendered'); var formatted=this.display(selection, $rendered); $rendered.empty().append(formatted); $rendered.prop('title', selection.title||selection.text); }; return SingleSelection; }); Toolset_S2.define('toolset_select2/selection/multiple',[ 'jquery', './base', '../utils' ], function ($, BaseSelection, Utils){ function MultipleSelection ($element, options){ MultipleSelection.__super__.constructor.apply(this, arguments); } Utils.Extend(MultipleSelection, BaseSelection); MultipleSelection.prototype.render=function (){ var $selection=MultipleSelection.__super__.render.call(this); $selection.addClass('toolset_select2-selection--multiple'); $selection.html('
          ' ); return $selection; }; MultipleSelection.prototype.bind=function (container, $container){ var self=this; MultipleSelection.__super__.bind.apply(this, arguments); this.$selection.on('click', function (evt){ self.trigger('toggle', { originalEvent: evt }); }); this.$selection.on('click', '.toolset_select2-selection__choice__remove', function (evt){ if(self.options.get('disabled')){ return; } var $remove=$(this); var $selection=$remove.parent(); var data=$selection.data('data'); self.trigger('unselect', { originalEvent: evt, data: data }); } ); }; MultipleSelection.prototype.clear=function (){ this.$selection.find('.toolset_select2-selection__rendered').empty(); }; MultipleSelection.prototype.display=function (data, container){ var template=this.options.get('templateSelection'); var escapeMarkup=this.options.get('escapeMarkup'); return escapeMarkup(template(data, container)); }; MultipleSelection.prototype.selectionContainer=function (){ var $container=$( '
        • ' + '' + '×' + '' + '
        • ' ); return $container; }; MultipleSelection.prototype.update=function (data){ this.clear(); if(data.length===0){ return; } var $selections=[]; for (var d=0; d < data.length; d++){ var selection=data[d]; var $selection=this.selectionContainer(); var formatted=this.display(selection, $selection); $selection.append(formatted); $selection.prop('title', selection.title||selection.text); $selection.data('data', selection); $selections.push($selection); } var $rendered=this.$selection.find('.toolset_select2-selection__rendered'); Utils.appendMany($rendered, $selections); }; return MultipleSelection; }); Toolset_S2.define('toolset_select2/selection/placeholder',[ '../utils' ], function (Utils){ function Placeholder (decorated, $element, options){ this.placeholder=this.normalizePlaceholder(options.get('placeholder')); decorated.call(this, $element, options); } Placeholder.prototype.normalizePlaceholder=function (_, placeholder){ if(typeof placeholder==='string'){ placeholder={ id: '', text: placeholder };} return placeholder; }; Placeholder.prototype.createPlaceholder=function (decorated, placeholder){ var $placeholder=this.selectionContainer(); $placeholder.html(this.display(placeholder)); $placeholder.addClass('toolset_select2-selection__placeholder') .removeClass('toolset_select2-selection__choice'); return $placeholder; }; Placeholder.prototype.update=function (decorated, data){ var singlePlaceholder=( data.length==1&&data[0].id!=this.placeholder.id ); var multipleSelections=data.length > 1; if(multipleSelections||singlePlaceholder){ return decorated.call(this, data); } this.clear(); var $placeholder=this.createPlaceholder(this.placeholder); this.$selection.find('.toolset_select2-selection__rendered').append($placeholder); }; return Placeholder; }); Toolset_S2.define('toolset_select2/selection/allowClear',[ 'jquery', '../keys' ], function ($, KEYS){ function AllowClear (){ } AllowClear.prototype.bind=function (decorated, container, $container){ var self=this; decorated.call(this, container, $container); if(this.placeholder==null){ if(this.options.get('debug')&&window.console&&console.error){ console.error('Select2: The `allowClear` option should be used in combination ' + 'with the `placeholder` option.' ); }} this.$selection.on('mousedown', '.toolset_select2-selection__clear', function (evt){ self._handleClear(evt); }); container.on('keypress', function (evt){ self._handleKeyboardClear(evt, container); }); }; AllowClear.prototype._handleClear=function (_, evt){ if(this.options.get('disabled')){ return; } var $clear=this.$selection.find('.toolset_select2-selection__clear'); if($clear.length===0){ return; } evt.stopPropagation(); var data=$clear.data('data'); for (var d=0; d < data.length; d++){ var unselectData={ data: data[d] }; this.trigger('unselect', unselectData); if(unselectData.prevented){ return; }} this.$element.val(this.placeholder.id).trigger('change'); this.trigger('toggle', {}); }; AllowClear.prototype._handleKeyboardClear=function (_, evt, container){ if(container.isOpen()){ return; } if(evt.which==KEYS.DELETE||evt.which==KEYS.BACKSPACE){ this._handleClear(evt); }}; AllowClear.prototype.update=function (decorated, data){ decorated.call(this, data); if(this.$selection.find('.toolset_select2-selection__placeholder').length > 0 || data.length===0){ return; } var $remove=$( '' + '×' + '' ); $remove.data('data', data); this.$selection.find('.toolset_select2-selection__rendered').prepend($remove); }; return AllowClear; }); Toolset_S2.define('toolset_select2/selection/search',[ 'jquery', '../utils', '../keys' ], function ($, Utils, KEYS){ function Search (decorated, $element, options){ decorated.call(this, $element, options); } Search.prototype.render=function (decorated){ var $search=$( '' ); this.$searchContainer=$search; this.$search=$search.find('input'); var $rendered=decorated.call(this); this._transferTabIndex(); return $rendered; }; Search.prototype.bind=function (decorated, container, $container){ var self=this; decorated.call(this, container, $container); container.on('open', function (){ self.$search.trigger('focus'); }); container.on('close', function (){ self.$search.val(''); self.$search.removeAttr('aria-activedescendant'); self.$search.trigger('focus'); }); container.on('enable', function (){ self.$search.prop('disabled', false); self._transferTabIndex(); }); container.on('disable', function (){ self.$search.prop('disabled', true); }); container.on('focus', function (evt){ self.$search.trigger('focus'); }); container.on('results:focus', function (params){ self.$search.attr('aria-activedescendant', params.id); }); this.$selection.on('focusin', '.toolset_select2-search--inline', function (evt){ self.trigger('focus', evt); }); this.$selection.on('focusout', '.toolset_select2-search--inline', function (evt){ self._handleBlur(evt); }); this.$selection.on('keydown', '.toolset_select2-search--inline', function (evt){ evt.stopPropagation(); self.trigger('keypress', evt); self._keyUpPrevented=evt.isDefaultPrevented(); var key=evt.which; if(key===KEYS.BACKSPACE&&self.$search.val()===''){ var $previousChoice=self.$searchContainer .prev('.toolset_select2-selection__choice'); if($previousChoice.length > 0){ var item=$previousChoice.data('data'); self.searchRemoveChoice(item); evt.preventDefault(); }} }); var msie=document.documentMode; var disableInputEvents=msie&&msie <=11; this.$selection.on('input.searchcheck', '.toolset_select2-search--inline', function (evt){ if(disableInputEvents){ self.$selection.off('input.search input.searchcheck'); return; } self.$selection.off('keyup.search'); } ); this.$selection.on('keyup.search input.search', '.toolset_select2-search--inline', function (evt){ if(disableInputEvents&&evt.type==='input'){ self.$selection.off('input.search input.searchcheck'); return; } var key=evt.which; if(key==KEYS.SHIFT||key==KEYS.CTRL||key==KEYS.ALT){ return; } if(key==KEYS.TAB){ return; } self.handleSearch(evt); } ); }; Search.prototype._transferTabIndex=function (decorated){ this.$search.attr('tabindex', this.$selection.attr('tabindex')); this.$selection.attr('tabindex', '-1'); }; Search.prototype.createPlaceholder=function (decorated, placeholder){ this.$search.attr('placeholder', placeholder.text); }; Search.prototype.update=function (decorated, data){ var searchHadFocus=this.$search[0]==document.activeElement; this.$search.attr('placeholder', ''); decorated.call(this, data); this.$selection.find('.toolset_select2-selection__rendered') .append(this.$searchContainer); this.resizeSearch(); if(searchHadFocus){ this.$search.focus(); }}; Search.prototype.handleSearch=function (){ this.resizeSearch(); if(!this._keyUpPrevented){ var input=this.$search.val(); this.trigger('query', { term: input }); } this._keyUpPrevented=false; }; Search.prototype.searchRemoveChoice=function (decorated, item){ this.trigger('unselect', { data: item }); this.$search.val(item.text); this.handleSearch(); }; Search.prototype.resizeSearch=function (){ this.$search.css('width', '25px'); var width=''; if(this.$search.attr('placeholder')!==''){ width=this.$selection.find('.toolset_select2-selection__rendered').innerWidth(); }else{ var minimumWidth=this.$search.val().length + 1; width=(minimumWidth * 0.75) + 'em'; } this.$search.css('width', width); }; return Search; }); Toolset_S2.define('toolset_select2/selection/eventRelay',[ 'jquery' ], function ($){ function EventRelay (){ } EventRelay.prototype.bind=function (decorated, container, $container){ var self=this; var relayEvents=[ 'open', 'opening', 'close', 'closing', 'select', 'selecting', 'unselect', 'unselecting' ]; var preventableEvents=['opening', 'closing', 'selecting', 'unselecting']; decorated.call(this, container, $container); container.on('*', function (name, params){ if($.inArray(name, relayEvents)===-1){ return; } params=params||{}; var evt=$.Event('toolset_select2:' + name, { params: params }); self.$element.trigger(evt); if($.inArray(name, preventableEvents)===-1){ return; } params.prevented=evt.isDefaultPrevented(); }); }; return EventRelay; }); Toolset_S2.define('toolset_select2/translation',[ 'jquery', 'require' ], function ($, require){ function Translation (dict){ this.dict=dict||{};} Translation.prototype.all=function (){ return this.dict; }; Translation.prototype.get=function (key){ return this.dict[key]; }; Translation.prototype.extend=function (translation){ this.dict=$.extend({}, translation.all(), this.dict); }; Translation._cache={}; Translation.loadPath=function (path){ if(!(path in Translation._cache)){ var translations=require(path); Translation._cache[path]=translations; } return new Translation(Translation._cache[path]); }; return Translation; }); Toolset_S2.define('toolset_select2/diacritics',[ ], function (){ var diacritics={ '\u24B6': 'A', '\uFF21': 'A', '\u00C0': 'A', '\u00C1': 'A', '\u00C2': 'A', '\u1EA6': 'A', '\u1EA4': 'A', '\u1EAA': 'A', '\u1EA8': 'A', '\u00C3': 'A', '\u0100': 'A', '\u0102': 'A', '\u1EB0': 'A', '\u1EAE': 'A', '\u1EB4': 'A', '\u1EB2': 'A', '\u0226': 'A', '\u01E0': 'A', '\u00C4': 'A', '\u01DE': 'A', '\u1EA2': 'A', '\u00C5': 'A', '\u01FA': 'A', '\u01CD': 'A', '\u0200': 'A', '\u0202': 'A', '\u1EA0': 'A', '\u1EAC': 'A', '\u1EB6': 'A', '\u1E00': 'A', '\u0104': 'A', '\u023A': 'A', '\u2C6F': 'A', '\uA732': 'AA', '\u00C6': 'AE', '\u01FC': 'AE', '\u01E2': 'AE', '\uA734': 'AO', '\uA736': 'AU', '\uA738': 'AV', '\uA73A': 'AV', '\uA73C': 'AY', '\u24B7': 'B', '\uFF22': 'B', '\u1E02': 'B', '\u1E04': 'B', '\u1E06': 'B', '\u0243': 'B', '\u0182': 'B', '\u0181': 'B', '\u24B8': 'C', '\uFF23': 'C', '\u0106': 'C', '\u0108': 'C', '\u010A': 'C', '\u010C': 'C', '\u00C7': 'C', '\u1E08': 'C', '\u0187': 'C', '\u023B': 'C', '\uA73E': 'C', '\u24B9': 'D', '\uFF24': 'D', '\u1E0A': 'D', '\u010E': 'D', '\u1E0C': 'D', '\u1E10': 'D', '\u1E12': 'D', '\u1E0E': 'D', '\u0110': 'D', '\u018B': 'D', '\u018A': 'D', '\u0189': 'D', '\uA779': 'D', '\u01F1': 'DZ', '\u01C4': 'DZ', '\u01F2': 'Dz', '\u01C5': 'Dz', '\u24BA': 'E', '\uFF25': 'E', '\u00C8': 'E', '\u00C9': 'E', '\u00CA': 'E', '\u1EC0': 'E', '\u1EBE': 'E', '\u1EC4': 'E', '\u1EC2': 'E', '\u1EBC': 'E', '\u0112': 'E', '\u1E14': 'E', '\u1E16': 'E', '\u0114': 'E', '\u0116': 'E', '\u00CB': 'E', '\u1EBA': 'E', '\u011A': 'E', '\u0204': 'E', '\u0206': 'E', '\u1EB8': 'E', '\u1EC6': 'E', '\u0228': 'E', '\u1E1C': 'E', '\u0118': 'E', '\u1E18': 'E', '\u1E1A': 'E', '\u0190': 'E', '\u018E': 'E', '\u24BB': 'F', '\uFF26': 'F', '\u1E1E': 'F', '\u0191': 'F', '\uA77B': 'F', '\u24BC': 'G', '\uFF27': 'G', '\u01F4': 'G', '\u011C': 'G', '\u1E20': 'G', '\u011E': 'G', '\u0120': 'G', '\u01E6': 'G', '\u0122': 'G', '\u01E4': 'G', '\u0193': 'G', '\uA7A0': 'G', '\uA77D': 'G', '\uA77E': 'G', '\u24BD': 'H', '\uFF28': 'H', '\u0124': 'H', '\u1E22': 'H', '\u1E26': 'H', '\u021E': 'H', '\u1E24': 'H', '\u1E28': 'H', '\u1E2A': 'H', '\u0126': 'H', '\u2C67': 'H', '\u2C75': 'H', '\uA78D': 'H', '\u24BE': 'I', '\uFF29': 'I', '\u00CC': 'I', '\u00CD': 'I', '\u00CE': 'I', '\u0128': 'I', '\u012A': 'I', '\u012C': 'I', '\u0130': 'I', '\u00CF': 'I', '\u1E2E': 'I', '\u1EC8': 'I', '\u01CF': 'I', '\u0208': 'I', '\u020A': 'I', '\u1ECA': 'I', '\u012E': 'I', '\u1E2C': 'I', '\u0197': 'I', '\u24BF': 'J', '\uFF2A': 'J', '\u0134': 'J', '\u0248': 'J', '\u24C0': 'K', '\uFF2B': 'K', '\u1E30': 'K', '\u01E8': 'K', '\u1E32': 'K', '\u0136': 'K', '\u1E34': 'K', '\u0198': 'K', '\u2C69': 'K', '\uA740': 'K', '\uA742': 'K', '\uA744': 'K', '\uA7A2': 'K', '\u24C1': 'L', '\uFF2C': 'L', '\u013F': 'L', '\u0139': 'L', '\u013D': 'L', '\u1E36': 'L', '\u1E38': 'L', '\u013B': 'L', '\u1E3C': 'L', '\u1E3A': 'L', '\u0141': 'L', '\u023D': 'L', '\u2C62': 'L', '\u2C60': 'L', '\uA748': 'L', '\uA746': 'L', '\uA780': 'L', '\u01C7': 'LJ', '\u01C8': 'Lj', '\u24C2': 'M', '\uFF2D': 'M', '\u1E3E': 'M', '\u1E40': 'M', '\u1E42': 'M', '\u2C6E': 'M', '\u019C': 'M', '\u24C3': 'N', '\uFF2E': 'N', '\u01F8': 'N', '\u0143': 'N', '\u00D1': 'N', '\u1E44': 'N', '\u0147': 'N', '\u1E46': 'N', '\u0145': 'N', '\u1E4A': 'N', '\u1E48': 'N', '\u0220': 'N', '\u019D': 'N', '\uA790': 'N', '\uA7A4': 'N', '\u01CA': 'NJ', '\u01CB': 'Nj', '\u24C4': 'O', '\uFF2F': 'O', '\u00D2': 'O', '\u00D3': 'O', '\u00D4': 'O', '\u1ED2': 'O', '\u1ED0': 'O', '\u1ED6': 'O', '\u1ED4': 'O', '\u00D5': 'O', '\u1E4C': 'O', '\u022C': 'O', '\u1E4E': 'O', '\u014C': 'O', '\u1E50': 'O', '\u1E52': 'O', '\u014E': 'O', '\u022E': 'O', '\u0230': 'O', '\u00D6': 'O', '\u022A': 'O', '\u1ECE': 'O', '\u0150': 'O', '\u01D1': 'O', '\u020C': 'O', '\u020E': 'O', '\u01A0': 'O', '\u1EDC': 'O', '\u1EDA': 'O', '\u1EE0': 'O', '\u1EDE': 'O', '\u1EE2': 'O', '\u1ECC': 'O', '\u1ED8': 'O', '\u01EA': 'O', '\u01EC': 'O', '\u00D8': 'O', '\u01FE': 'O', '\u0186': 'O', '\u019F': 'O', '\uA74A': 'O', '\uA74C': 'O', '\u01A2': 'OI', '\uA74E': 'OO', '\u0222': 'OU', '\u24C5': 'P', '\uFF30': 'P', '\u1E54': 'P', '\u1E56': 'P', '\u01A4': 'P', '\u2C63': 'P', '\uA750': 'P', '\uA752': 'P', '\uA754': 'P', '\u24C6': 'Q', '\uFF31': 'Q', '\uA756': 'Q', '\uA758': 'Q', '\u024A': 'Q', '\u24C7': 'R', '\uFF32': 'R', '\u0154': 'R', '\u1E58': 'R', '\u0158': 'R', '\u0210': 'R', '\u0212': 'R', '\u1E5A': 'R', '\u1E5C': 'R', '\u0156': 'R', '\u1E5E': 'R', '\u024C': 'R', '\u2C64': 'R', '\uA75A': 'R', '\uA7A6': 'R', '\uA782': 'R', '\u24C8': 'S', '\uFF33': 'S', '\u1E9E': 'S', '\u015A': 'S', '\u1E64': 'S', '\u015C': 'S', '\u1E60': 'S', '\u0160': 'S', '\u1E66': 'S', '\u1E62': 'S', '\u1E68': 'S', '\u0218': 'S', '\u015E': 'S', '\u2C7E': 'S', '\uA7A8': 'S', '\uA784': 'S', '\u24C9': 'T', '\uFF34': 'T', '\u1E6A': 'T', '\u0164': 'T', '\u1E6C': 'T', '\u021A': 'T', '\u0162': 'T', '\u1E70': 'T', '\u1E6E': 'T', '\u0166': 'T', '\u01AC': 'T', '\u01AE': 'T', '\u023E': 'T', '\uA786': 'T', '\uA728': 'TZ', '\u24CA': 'U', '\uFF35': 'U', '\u00D9': 'U', '\u00DA': 'U', '\u00DB': 'U', '\u0168': 'U', '\u1E78': 'U', '\u016A': 'U', '\u1E7A': 'U', '\u016C': 'U', '\u00DC': 'U', '\u01DB': 'U', '\u01D7': 'U', '\u01D5': 'U', '\u01D9': 'U', '\u1EE6': 'U', '\u016E': 'U', '\u0170': 'U', '\u01D3': 'U', '\u0214': 'U', '\u0216': 'U', '\u01AF': 'U', '\u1EEA': 'U', '\u1EE8': 'U', '\u1EEE': 'U', '\u1EEC': 'U', '\u1EF0': 'U', '\u1EE4': 'U', '\u1E72': 'U', '\u0172': 'U', '\u1E76': 'U', '\u1E74': 'U', '\u0244': 'U', '\u24CB': 'V', '\uFF36': 'V', '\u1E7C': 'V', '\u1E7E': 'V', '\u01B2': 'V', '\uA75E': 'V', '\u0245': 'V', '\uA760': 'VY', '\u24CC': 'W', '\uFF37': 'W', '\u1E80': 'W', '\u1E82': 'W', '\u0174': 'W', '\u1E86': 'W', '\u1E84': 'W', '\u1E88': 'W', '\u2C72': 'W', '\u24CD': 'X', '\uFF38': 'X', '\u1E8A': 'X', '\u1E8C': 'X', '\u24CE': 'Y', '\uFF39': 'Y', '\u1EF2': 'Y', '\u00DD': 'Y', '\u0176': 'Y', '\u1EF8': 'Y', '\u0232': 'Y', '\u1E8E': 'Y', '\u0178': 'Y', '\u1EF6': 'Y', '\u1EF4': 'Y', '\u01B3': 'Y', '\u024E': 'Y', '\u1EFE': 'Y', '\u24CF': 'Z', '\uFF3A': 'Z', '\u0179': 'Z', '\u1E90': 'Z', '\u017B': 'Z', '\u017D': 'Z', '\u1E92': 'Z', '\u1E94': 'Z', '\u01B5': 'Z', '\u0224': 'Z', '\u2C7F': 'Z', '\u2C6B': 'Z', '\uA762': 'Z', '\u24D0': 'a', '\uFF41': 'a', '\u1E9A': 'a', '\u00E0': 'a', '\u00E1': 'a', '\u00E2': 'a', '\u1EA7': 'a', '\u1EA5': 'a', '\u1EAB': 'a', '\u1EA9': 'a', '\u00E3': 'a', '\u0101': 'a', '\u0103': 'a', '\u1EB1': 'a', '\u1EAF': 'a', '\u1EB5': 'a', '\u1EB3': 'a', '\u0227': 'a', '\u01E1': 'a', '\u00E4': 'a', '\u01DF': 'a', '\u1EA3': 'a', '\u00E5': 'a', '\u01FB': 'a', '\u01CE': 'a', '\u0201': 'a', '\u0203': 'a', '\u1EA1': 'a', '\u1EAD': 'a', '\u1EB7': 'a', '\u1E01': 'a', '\u0105': 'a', '\u2C65': 'a', '\u0250': 'a', '\uA733': 'aa', '\u00E6': 'ae', '\u01FD': 'ae', '\u01E3': 'ae', '\uA735': 'ao', '\uA737': 'au', '\uA739': 'av', '\uA73B': 'av', '\uA73D': 'ay', '\u24D1': 'b', '\uFF42': 'b', '\u1E03': 'b', '\u1E05': 'b', '\u1E07': 'b', '\u0180': 'b', '\u0183': 'b', '\u0253': 'b', '\u24D2': 'c', '\uFF43': 'c', '\u0107': 'c', '\u0109': 'c', '\u010B': 'c', '\u010D': 'c', '\u00E7': 'c', '\u1E09': 'c', '\u0188': 'c', '\u023C': 'c', '\uA73F': 'c', '\u2184': 'c', '\u24D3': 'd', '\uFF44': 'd', '\u1E0B': 'd', '\u010F': 'd', '\u1E0D': 'd', '\u1E11': 'd', '\u1E13': 'd', '\u1E0F': 'd', '\u0111': 'd', '\u018C': 'd', '\u0256': 'd', '\u0257': 'd', '\uA77A': 'd', '\u01F3': 'dz', '\u01C6': 'dz', '\u24D4': 'e', '\uFF45': 'e', '\u00E8': 'e', '\u00E9': 'e', '\u00EA': 'e', '\u1EC1': 'e', '\u1EBF': 'e', '\u1EC5': 'e', '\u1EC3': 'e', '\u1EBD': 'e', '\u0113': 'e', '\u1E15': 'e', '\u1E17': 'e', '\u0115': 'e', '\u0117': 'e', '\u00EB': 'e', '\u1EBB': 'e', '\u011B': 'e', '\u0205': 'e', '\u0207': 'e', '\u1EB9': 'e', '\u1EC7': 'e', '\u0229': 'e', '\u1E1D': 'e', '\u0119': 'e', '\u1E19': 'e', '\u1E1B': 'e', '\u0247': 'e', '\u025B': 'e', '\u01DD': 'e', '\u24D5': 'f', '\uFF46': 'f', '\u1E1F': 'f', '\u0192': 'f', '\uA77C': 'f', '\u24D6': 'g', '\uFF47': 'g', '\u01F5': 'g', '\u011D': 'g', '\u1E21': 'g', '\u011F': 'g', '\u0121': 'g', '\u01E7': 'g', '\u0123': 'g', '\u01E5': 'g', '\u0260': 'g', '\uA7A1': 'g', '\u1D79': 'g', '\uA77F': 'g', '\u24D7': 'h', '\uFF48': 'h', '\u0125': 'h', '\u1E23': 'h', '\u1E27': 'h', '\u021F': 'h', '\u1E25': 'h', '\u1E29': 'h', '\u1E2B': 'h', '\u1E96': 'h', '\u0127': 'h', '\u2C68': 'h', '\u2C76': 'h', '\u0265': 'h', '\u0195': 'hv', '\u24D8': 'i', '\uFF49': 'i', '\u00EC': 'i', '\u00ED': 'i', '\u00EE': 'i', '\u0129': 'i', '\u012B': 'i', '\u012D': 'i', '\u00EF': 'i', '\u1E2F': 'i', '\u1EC9': 'i', '\u01D0': 'i', '\u0209': 'i', '\u020B': 'i', '\u1ECB': 'i', '\u012F': 'i', '\u1E2D': 'i', '\u0268': 'i', '\u0131': 'i', '\u24D9': 'j', '\uFF4A': 'j', '\u0135': 'j', '\u01F0': 'j', '\u0249': 'j', '\u24DA': 'k', '\uFF4B': 'k', '\u1E31': 'k', '\u01E9': 'k', '\u1E33': 'k', '\u0137': 'k', '\u1E35': 'k', '\u0199': 'k', '\u2C6A': 'k', '\uA741': 'k', '\uA743': 'k', '\uA745': 'k', '\uA7A3': 'k', '\u24DB': 'l', '\uFF4C': 'l', '\u0140': 'l', '\u013A': 'l', '\u013E': 'l', '\u1E37': 'l', '\u1E39': 'l', '\u013C': 'l', '\u1E3D': 'l', '\u1E3B': 'l', '\u017F': 'l', '\u0142': 'l', '\u019A': 'l', '\u026B': 'l', '\u2C61': 'l', '\uA749': 'l', '\uA781': 'l', '\uA747': 'l', '\u01C9': 'lj', '\u24DC': 'm', '\uFF4D': 'm', '\u1E3F': 'm', '\u1E41': 'm', '\u1E43': 'm', '\u0271': 'm', '\u026F': 'm', '\u24DD': 'n', '\uFF4E': 'n', '\u01F9': 'n', '\u0144': 'n', '\u00F1': 'n', '\u1E45': 'n', '\u0148': 'n', '\u1E47': 'n', '\u0146': 'n', '\u1E4B': 'n', '\u1E49': 'n', '\u019E': 'n', '\u0272': 'n', '\u0149': 'n', '\uA791': 'n', '\uA7A5': 'n', '\u01CC': 'nj', '\u24DE': 'o', '\uFF4F': 'o', '\u00F2': 'o', '\u00F3': 'o', '\u00F4': 'o', '\u1ED3': 'o', '\u1ED1': 'o', '\u1ED7': 'o', '\u1ED5': 'o', '\u00F5': 'o', '\u1E4D': 'o', '\u022D': 'o', '\u1E4F': 'o', '\u014D': 'o', '\u1E51': 'o', '\u1E53': 'o', '\u014F': 'o', '\u022F': 'o', '\u0231': 'o', '\u00F6': 'o', '\u022B': 'o', '\u1ECF': 'o', '\u0151': 'o', '\u01D2': 'o', '\u020D': 'o', '\u020F': 'o', '\u01A1': 'o', '\u1EDD': 'o', '\u1EDB': 'o', '\u1EE1': 'o', '\u1EDF': 'o', '\u1EE3': 'o', '\u1ECD': 'o', '\u1ED9': 'o', '\u01EB': 'o', '\u01ED': 'o', '\u00F8': 'o', '\u01FF': 'o', '\u0254': 'o', '\uA74B': 'o', '\uA74D': 'o', '\u0275': 'o', '\u01A3': 'oi', '\u0223': 'ou', '\uA74F': 'oo', '\u24DF': 'p', '\uFF50': 'p', '\u1E55': 'p', '\u1E57': 'p', '\u01A5': 'p', '\u1D7D': 'p', '\uA751': 'p', '\uA753': 'p', '\uA755': 'p', '\u24E0': 'q', '\uFF51': 'q', '\u024B': 'q', '\uA757': 'q', '\uA759': 'q', '\u24E1': 'r', '\uFF52': 'r', '\u0155': 'r', '\u1E59': 'r', '\u0159': 'r', '\u0211': 'r', '\u0213': 'r', '\u1E5B': 'r', '\u1E5D': 'r', '\u0157': 'r', '\u1E5F': 'r', '\u024D': 'r', '\u027D': 'r', '\uA75B': 'r', '\uA7A7': 'r', '\uA783': 'r', '\u24E2': 's', '\uFF53': 's', '\u00DF': 's', '\u015B': 's', '\u1E65': 's', '\u015D': 's', '\u1E61': 's', '\u0161': 's', '\u1E67': 's', '\u1E63': 's', '\u1E69': 's', '\u0219': 's', '\u015F': 's', '\u023F': 's', '\uA7A9': 's', '\uA785': 's', '\u1E9B': 's', '\u24E3': 't', '\uFF54': 't', '\u1E6B': 't', '\u1E97': 't', '\u0165': 't', '\u1E6D': 't', '\u021B': 't', '\u0163': 't', '\u1E71': 't', '\u1E6F': 't', '\u0167': 't', '\u01AD': 't', '\u0288': 't', '\u2C66': 't', '\uA787': 't', '\uA729': 'tz', '\u24E4': 'u', '\uFF55': 'u', '\u00F9': 'u', '\u00FA': 'u', '\u00FB': 'u', '\u0169': 'u', '\u1E79': 'u', '\u016B': 'u', '\u1E7B': 'u', '\u016D': 'u', '\u00FC': 'u', '\u01DC': 'u', '\u01D8': 'u', '\u01D6': 'u', '\u01DA': 'u', '\u1EE7': 'u', '\u016F': 'u', '\u0171': 'u', '\u01D4': 'u', '\u0215': 'u', '\u0217': 'u', '\u01B0': 'u', '\u1EEB': 'u', '\u1EE9': 'u', '\u1EEF': 'u', '\u1EED': 'u', '\u1EF1': 'u', '\u1EE5': 'u', '\u1E73': 'u', '\u0173': 'u', '\u1E77': 'u', '\u1E75': 'u', '\u0289': 'u', '\u24E5': 'v', '\uFF56': 'v', '\u1E7D': 'v', '\u1E7F': 'v', '\u028B': 'v', '\uA75F': 'v', '\u028C': 'v', '\uA761': 'vy', '\u24E6': 'w', '\uFF57': 'w', '\u1E81': 'w', '\u1E83': 'w', '\u0175': 'w', '\u1E87': 'w', '\u1E85': 'w', '\u1E98': 'w', '\u1E89': 'w', '\u2C73': 'w', '\u24E7': 'x', '\uFF58': 'x', '\u1E8B': 'x', '\u1E8D': 'x', '\u24E8': 'y', '\uFF59': 'y', '\u1EF3': 'y', '\u00FD': 'y', '\u0177': 'y', '\u1EF9': 'y', '\u0233': 'y', '\u1E8F': 'y', '\u00FF': 'y', '\u1EF7': 'y', '\u1E99': 'y', '\u1EF5': 'y', '\u01B4': 'y', '\u024F': 'y', '\u1EFF': 'y', '\u24E9': 'z', '\uFF5A': 'z', '\u017A': 'z', '\u1E91': 'z', '\u017C': 'z', '\u017E': 'z', '\u1E93': 'z', '\u1E95': 'z', '\u01B6': 'z', '\u0225': 'z', '\u0240': 'z', '\u2C6C': 'z', '\uA763': 'z', '\u0386': '\u0391', '\u0388': '\u0395', '\u0389': '\u0397', '\u038A': '\u0399', '\u03AA': '\u0399', '\u038C': '\u039F', '\u038E': '\u03A5', '\u03AB': '\u03A5', '\u038F': '\u03A9', '\u03AC': '\u03B1', '\u03AD': '\u03B5', '\u03AE': '\u03B7', '\u03AF': '\u03B9', '\u03CA': '\u03B9', '\u0390': '\u03B9', '\u03CC': '\u03BF', '\u03CD': '\u03C5', '\u03CB': '\u03C5', '\u03B0': '\u03C5', '\u03C9': '\u03C9', '\u03C2': '\u03C3' }; return diacritics; }); Toolset_S2.define('toolset_select2/data/base',[ '../utils' ], function (Utils){ function BaseAdapter ($element, options){ BaseAdapter.__super__.constructor.call(this); } Utils.Extend(BaseAdapter, Utils.Observable); BaseAdapter.prototype.current=function (callback){ throw new Error('The `current` method must be defined in child classes.'); }; BaseAdapter.prototype.query=function (params, callback){ throw new Error('The `query` method must be defined in child classes.'); }; BaseAdapter.prototype.bind=function (container, $container){ }; BaseAdapter.prototype.destroy=function (){ }; BaseAdapter.prototype.generateResultId=function (container, data){ var id=container.id + '-result-'; id +=Utils.generateChars(4); if(data.id!=null){ id +='-' + data.id.toString(); }else{ id +='-' + Utils.generateChars(4); } return id; }; return BaseAdapter; }); Toolset_S2.define('toolset_select2/data/select',[ './base', '../utils', 'jquery' ], function (BaseAdapter, Utils, $){ function SelectAdapter ($element, options){ this.$element=$element; this.options=options; SelectAdapter.__super__.constructor.call(this); } Utils.Extend(SelectAdapter, BaseAdapter); SelectAdapter.prototype.current=function (callback){ var data=[]; var self=this; this.$element.find(':selected').each(function (){ var $option=$(this); var option=self.item($option); data.push(option); }); callback(data); }; SelectAdapter.prototype.select=function (data){ var self=this; data.selected=true; if($(data.element).is('option')){ data.element.selected=true; this.$element.trigger('change'); return; } if(this.$element.prop('multiple')){ this.current(function (currentData){ var val=[]; data=[data]; data.push.apply(data, currentData); for (var d=0; d < data.length; d++){ var id=data[d].id; if($.inArray(id, val)===-1){ val.push(id); }} self.$element.val(val); self.$element.trigger('change'); }); }else{ var val=data.id; this.$element.val(val); this.$element.trigger('change'); }}; SelectAdapter.prototype.unselect=function (data){ var self=this; if(!this.$element.prop('multiple')){ return; } data.selected=false; if($(data.element).is('option')){ data.element.selected=false; this.$element.trigger('change'); return; } this.current(function (currentData){ var val=[]; for (var d=0; d < currentData.length; d++){ var id=currentData[d].id; if(id!==data.id&&$.inArray(id, val)===-1){ val.push(id); }} self.$element.val(val); self.$element.trigger('change'); }); }; SelectAdapter.prototype.bind=function (container, $container){ var self=this; this.container=container; container.on('select', function (params){ self.select(params.data); }); container.on('unselect', function (params){ self.unselect(params.data); }); }; SelectAdapter.prototype.destroy=function (){ this.$element.find('*').each(function (){ $.removeData(this, 'data'); }); }; SelectAdapter.prototype.query=function (params, callback){ var data=[]; var self=this; var $options=this.$element.children(); $options.each(function (){ var $option=$(this); if(!$option.is('option')&&!$option.is('optgroup')){ return; } var option=self.item($option); var matches=self.matches(params, option); if(matches!==null){ data.push(matches); }}); callback({ results: data }); }; SelectAdapter.prototype.addOptions=function ($options){ Utils.appendMany(this.$element, $options); }; SelectAdapter.prototype.option=function (data){ var option; if(data.children){ option=document.createElement('optgroup'); option.label=data.text; }else{ option=document.createElement('option'); if(option.textContent!==undefined){ option.textContent=data.text; }else{ option.innerText=data.text; }} if(data.id){ option.value=data.id; } if(data.disabled){ option.disabled=true; } if(data.selected){ option.selected=true; } if(data.title){ option.title=data.title; } var $option=$(option); var normalizedData=this._normalizeItem(data); normalizedData.element=option; $.data(option, 'data', normalizedData); return $option; }; SelectAdapter.prototype.item=function ($option){ var data={}; data=$.data($option[0], 'data'); if(data!=null){ return data; } if($option.is('option')){ data={ id: $option.val(), text: $option.text(), disabled: $option.prop('disabled'), selected: $option.prop('selected'), title: $option.prop('title') };}else if($option.is('optgroup')){ data={ text: $option.prop('label'), children: [], title: $option.prop('title') }; var $children=$option.children('option'); var children=[]; for (var c=0; c < $children.length; c++){ var $child=$($children[c]); var child=this.item($child); children.push(child); } data.children=children; } data=this._normalizeItem(data); data.element=$option[0]; $.data($option[0], 'data', data); return data; }; SelectAdapter.prototype._normalizeItem=function (item){ if(!$.isPlainObject(item)){ item={ id: item, text: item };} item=$.extend({}, { text: '' }, item); var defaults={ selected: false, disabled: false }; if(item.id!=null){ item.id=item.id.toString(); } if(item.text!=null){ item.text=item.text.toString(); } if(item._resultId==null&&item.id&&this.container!=null){ item._resultId=this.generateResultId(this.container, item); } return $.extend({}, defaults, item); }; SelectAdapter.prototype.matches=function (params, data){ var matcher=this.options.get('matcher'); return matcher(params, data); }; return SelectAdapter; }); Toolset_S2.define('toolset_select2/data/array',[ './select', '../utils', 'jquery' ], function (SelectAdapter, Utils, $){ function ArrayAdapter ($element, options){ var data=options.get('data')||[]; ArrayAdapter.__super__.constructor.call(this, $element, options); this.addOptions(this.convertToOptions(data)); } Utils.Extend(ArrayAdapter, SelectAdapter); ArrayAdapter.prototype.select=function (data){ var $option=this.$element.find('option').filter(function (i, elm){ return elm.value==data.id.toString(); }); if($option.length===0){ $option=this.option(data); this.addOptions($option); } ArrayAdapter.__super__.select.call(this, data); }; ArrayAdapter.prototype.convertToOptions=function (data){ var self=this; var $existing=this.$element.find('option'); var existingIds=$existing.map(function (){ return self.item($(this)).id; }).get(); var $options=[]; function onlyItem (item){ return function (){ return $(this).val()==item.id; };} for (var d=0; d < data.length; d++){ var item=this._normalizeItem(data[d]); if($.inArray(item.id, existingIds) >=0){ var $existingOption=$existing.filter(onlyItem(item)); var existingData=this.item($existingOption); var newData=$.extend(true, {}, item, existingData); var $newOption=this.option(newData); $existingOption.replaceWith($newOption); continue; } var $option=this.option(item); if(item.children){ var $children=this.convertToOptions(item.children); Utils.appendMany($option, $children); } $options.push($option); } return $options; }; return ArrayAdapter; }); Toolset_S2.define('toolset_select2/data/ajax',[ './array', '../utils', 'jquery' ], function (ArrayAdapter, Utils, $){ function AjaxAdapter ($element, options){ this.ajaxOptions=this._applyDefaults(options.get('ajax')); if(this.ajaxOptions.processResults!=null){ this.processResults=this.ajaxOptions.processResults; } AjaxAdapter.__super__.constructor.call(this, $element, options); } Utils.Extend(AjaxAdapter, ArrayAdapter); AjaxAdapter.prototype._applyDefaults=function (options){ var defaults={ data: function (params){ return $.extend({}, params, { q: params.term }); }, transport: function (params, success, failure){ var $request=$.ajax(params); $request.then(success); $request.fail(failure); return $request; }}; return $.extend({}, defaults, options, true); }; AjaxAdapter.prototype.processResults=function (results){ return results; }; AjaxAdapter.prototype.query=function (params, callback){ var matches=[]; var self=this; if(this._request!=null){ if($.isFunction(this._request.abort)){ this._request.abort(); } this._request=null; } var options=$.extend({ type: 'GET' }, this.ajaxOptions); if(typeof options.url==='function'){ options.url=options.url.call(this.$element, params); } if(typeof options.data==='function'){ options.data=options.data.call(this.$element, params); } function request (){ var $request=options.transport(options, function (data){ var results=self.processResults(data, params); if(self.options.get('debug')&&window.console&&console.error){ if(!results||!results.results||!$.isArray(results.results)){ console.error('Select2: The AJAX results did not return an array in the ' + '`results` key of the response.' ); }} callback(results); }, function (){ if($request.status&&$request.status==='0'){ return; } self.trigger('results:message', { message: 'errorLoading' }); }); self._request=$request; } if(this.ajaxOptions.delay&¶ms.term!=null){ if(this._queryTimeout){ window.clearTimeout(this._queryTimeout); } this._queryTimeout=window.setTimeout(request, this.ajaxOptions.delay); }else{ request(); }}; return AjaxAdapter; }); Toolset_S2.define('toolset_select2/data/tags',[ 'jquery' ], function ($){ function Tags (decorated, $element, options){ var tags=options.get('tags'); var createTag=options.get('createTag'); if(createTag!==undefined){ this.createTag=createTag; } var insertTag=options.get('insertTag'); if(insertTag!==undefined){ this.insertTag=insertTag; } decorated.call(this, $element, options); if($.isArray(tags)){ for (var t=0; t < tags.length; t++){ var tag=tags[t]; var item=this._normalizeItem(tag); var $option=this.option(item); this.$element.append($option); }} } Tags.prototype.query=function (decorated, params, callback){ var self=this; this._removeOldTags(); if(params.term==null||params.page!=null){ decorated.call(this, params, callback); return; } function wrapper (obj, child){ var data=obj.results; for (var i=0; i < data.length; i++){ var option=data[i]; var checkChildren=( option.children!=null && !wrapper({ results: option.children }, true) ); var checkText=option.text===params.term; if(checkText||checkChildren){ if(child){ return false; } obj.data=data; callback(obj); return; }} if(child){ return true; } var tag=self.createTag(params); if(tag!=null){ var $option=self.option(tag); $option.attr('data-toolset_select2-tag', true); self.addOptions([$option]); self.insertTag(data, tag); } obj.results=data; callback(obj); } decorated.call(this, params, wrapper); }; Tags.prototype.createTag=function (decorated, params){ var term=$.trim(params.term); if(term===''){ return null; } return { id: term, text: term };}; Tags.prototype.insertTag=function (_, data, tag){ data.unshift(tag); }; Tags.prototype._removeOldTags=function (_){ var tag=this._lastTag; var $options=this.$element.find('option[data-toolset_select2-tag]'); $options.each(function (){ if(this.selected){ return; } $(this).remove(); }); }; return Tags; }); Toolset_S2.define('toolset_select2/data/tokenizer',[ 'jquery' ], function ($){ function Tokenizer (decorated, $element, options){ var tokenizer=options.get('tokenizer'); if(tokenizer!==undefined){ this.tokenizer=tokenizer; } decorated.call(this, $element, options); } Tokenizer.prototype.bind=function (decorated, container, $container){ decorated.call(this, container, $container); this.$search=container.dropdown.$search||container.selection.$search || $container.find('.toolset_select2-search__field'); }; Tokenizer.prototype.query=function (decorated, params, callback){ var self=this; function createAndSelect (data){ var item=self._normalizeItem(data); var $existingOptions=self.$element.find('option').filter(function (){ return $(this).val()===item.id; }); if(!$existingOptions.length){ var $option=self.option(item); $option.attr('data-toolset_select2-tag', true); self._removeOldTags(); self.addOptions([$option]); } select(item); } function select (data){ self.trigger('select', { data: data }); } params.term=params.term||''; var tokenData=this.tokenizer(params, this.options, createAndSelect); if(tokenData.term!==params.term){ if(this.$search.length){ this.$search.val(tokenData.term); this.$search.focus(); } params.term=tokenData.term; } decorated.call(this, params, callback); }; Tokenizer.prototype.tokenizer=function (_, params, options, callback){ var separators=options.get('tokenSeparators')||[]; var term=params.term; var i=0; var createTag=this.createTag||function (params){ return { id: params.term, text: params.term };}; while (i < term.length){ var termChar=term[i]; if($.inArray(termChar, separators)===-1){ i++; continue; } var part=term.substr(0, i); var partParams=$.extend({}, params, { term: part }); var data=createTag(partParams); if(data==null){ i++; continue; } callback(data); term=term.substr(i + 1)||''; i=0; } return { term: term };}; return Tokenizer; }); Toolset_S2.define('toolset_select2/data/minimumInputLength',[ ], function (){ function MinimumInputLength (decorated, $e, options){ this.minimumInputLength=options.get('minimumInputLength'); decorated.call(this, $e, options); } MinimumInputLength.prototype.query=function (decorated, params, callback){ params.term=params.term||''; if(params.term.length < this.minimumInputLength){ this.trigger('results:message', { message: 'inputTooShort', args: { minimum: this.minimumInputLength, input: params.term, params: params }}); return; } decorated.call(this, params, callback); }; return MinimumInputLength; }); Toolset_S2.define('toolset_select2/data/maximumInputLength',[ ], function (){ function MaximumInputLength (decorated, $e, options){ this.maximumInputLength=options.get('maximumInputLength'); decorated.call(this, $e, options); } MaximumInputLength.prototype.query=function (decorated, params, callback){ params.term=params.term||''; if(this.maximumInputLength > 0 && params.term.length > this.maximumInputLength){ this.trigger('results:message', { message: 'inputTooLong', args: { maximum: this.maximumInputLength, input: params.term, params: params }}); return; } decorated.call(this, params, callback); }; return MaximumInputLength; }); Toolset_S2.define('toolset_select2/data/maximumSelectionLength',[ ], function (){ function MaximumSelectionLength (decorated, $e, options){ this.maximumSelectionLength=options.get('maximumSelectionLength'); decorated.call(this, $e, options); } MaximumSelectionLength.prototype.query = function (decorated, params, callback){ var self=this; this.current(function (currentData){ var count=currentData!=null ? currentData.length:0; if(self.maximumSelectionLength > 0 && count >=self.maximumSelectionLength){ self.trigger('results:message', { message: 'maximumSelected', args: { maximum: self.maximumSelectionLength }}); return; } decorated.call(self, params, callback); }); }; return MaximumSelectionLength; }); Toolset_S2.define('toolset_select2/dropdown',[ 'jquery', './utils' ], function ($, Utils){ function Dropdown ($element, options){ this.$element=$element; this.options=options; Dropdown.__super__.constructor.call(this); } Utils.Extend(Dropdown, Utils.Observable); Dropdown.prototype.render=function (){ var $dropdown=$( '' + '' + '' ); $dropdown.attr('dir', this.options.get('dir')); this.$dropdown=$dropdown; return $dropdown; }; Dropdown.prototype.bind=function (){ }; Dropdown.prototype.position=function ($dropdown, $container){ }; Dropdown.prototype.destroy=function (){ this.$dropdown.remove(); }; return Dropdown; }); Toolset_S2.define('toolset_select2/dropdown/search',[ 'jquery', '../utils' ], function ($, Utils){ function Search (){ } Search.prototype.render=function (decorated){ var $rendered=decorated.call(this); var $search=$( '' + '' + '' ); this.$searchContainer=$search; this.$search=$search.find('input'); $rendered.prepend($search); return $rendered; }; Search.prototype.bind=function (decorated, container, $container){ var self=this; decorated.call(this, container, $container); this.$search.on('keydown', function (evt){ self.trigger('keypress', evt); self._keyUpPrevented=evt.isDefaultPrevented(); }); this.$search.on('input', function (evt){ $(this).off('keyup'); }); this.$search.on('keyup input', function (evt){ self.handleSearch(evt); }); container.on('open', function (){ self.$search.attr('tabindex', 0); self.$search.focus(); window.setTimeout(function (){ self.$search.focus(); }, 0); }); container.on('close', function (){ self.$search.attr('tabindex', -1); self.$search.val(''); }); container.on('focus', function (){ if(container.isOpen()){ self.$search.focus(); }}); container.on('results:all', function (params){ if(params.query.term==null||params.query.term===''){ var showSearch=self.showSearch(params); if(showSearch){ self.$searchContainer.removeClass('toolset_select2-search--hide'); }else{ self.$searchContainer.addClass('toolset_select2-search--hide'); }} }); }; Search.prototype.handleSearch=function (evt){ if(!this._keyUpPrevented){ var input=this.$search.val(); this.trigger('query', { term: input }); } this._keyUpPrevented=false; }; Search.prototype.showSearch=function (_, params){ return true; }; return Search; }); Toolset_S2.define('toolset_select2/dropdown/hidePlaceholder',[ ], function (){ function HidePlaceholder (decorated, $element, options, dataAdapter){ this.placeholder=this.normalizePlaceholder(options.get('placeholder')); decorated.call(this, $element, options, dataAdapter); } HidePlaceholder.prototype.append=function (decorated, data){ data.results=this.removePlaceholder(data.results); decorated.call(this, data); }; HidePlaceholder.prototype.normalizePlaceholder=function (_, placeholder){ if(typeof placeholder==='string'){ placeholder={ id: '', text: placeholder };} return placeholder; }; HidePlaceholder.prototype.removePlaceholder=function (_, data){ var modifiedData=data.slice(0); for (var d=data.length - 1; d >=0; d--){ var item=data[d]; if(this.placeholder.id===item.id){ modifiedData.splice(d, 1); }} return modifiedData; }; return HidePlaceholder; }); Toolset_S2.define('toolset_select2/dropdown/infiniteScroll',[ 'jquery' ], function ($){ function InfiniteScroll (decorated, $element, options, dataAdapter){ this.lastParams={}; decorated.call(this, $element, options, dataAdapter); this.$loadingMore=this.createLoadingMore(); this.loading=false; } InfiniteScroll.prototype.append=function (decorated, data){ this.$loadingMore.remove(); this.loading=false; decorated.call(this, data); if(this.showLoadingMore(data)){ this.$results.append(this.$loadingMore); }}; InfiniteScroll.prototype.bind=function (decorated, container, $container){ var self=this; decorated.call(this, container, $container); container.on('query', function (params){ self.lastParams=params; self.loading=true; }); container.on('query:append', function (params){ self.lastParams=params; self.loading=true; }); this.$results.on('scroll', function (){ var isLoadMoreVisible=$.contains(document.documentElement, self.$loadingMore[0] ); if(self.loading||!isLoadMoreVisible){ return; } var currentOffset=self.$results.offset().top + self.$results.outerHeight(false); var loadingMoreOffset=self.$loadingMore.offset().top + self.$loadingMore.outerHeight(false); if(currentOffset + 50 >=loadingMoreOffset){ self.loadMore(); }}); }; InfiniteScroll.prototype.loadMore=function (){ this.loading=true; var params=$.extend({}, {page: 1}, this.lastParams); params.page++; this.trigger('query:append', params); }; InfiniteScroll.prototype.showLoadingMore=function (_, data){ return data.pagination&&data.pagination.more; }; InfiniteScroll.prototype.createLoadingMore=function (){ var $option=$( '
        • ' ); var message=this.options.get('translations').get('loadingMore'); $option.html(message(this.lastParams)); return $option; }; return InfiniteScroll; }); Toolset_S2.define('toolset_select2/dropdown/attachBody',[ 'jquery', '../utils' ], function ($, Utils){ function AttachBody (decorated, $element, options){ this.$dropdownParent=options.get('dropdownParent')||$(document.body); decorated.call(this, $element, options); } AttachBody.prototype.bind=function (decorated, container, $container){ var self=this; var setupResultsEvents=false; decorated.call(this, container, $container); container.on('open', function (){ self._showDropdown(); self._attachPositioningHandler(container); if(!setupResultsEvents){ setupResultsEvents=true; container.on('results:all', function (){ self._positionDropdown(); self._resizeDropdown(); }); container.on('results:append', function (){ self._positionDropdown(); self._resizeDropdown(); }); }}); container.on('close', function (){ self._hideDropdown(); self._detachPositioningHandler(container); }); this.$dropdownContainer.on('mousedown', function (evt){ evt.stopPropagation(); }); }; AttachBody.prototype.destroy=function (decorated){ decorated.call(this); this.$dropdownContainer.remove(); }; AttachBody.prototype.position=function (decorated, $dropdown, $container){ $dropdown.attr('class', $container.attr('class')); $dropdown.removeClass('toolset_select2'); $dropdown.addClass('toolset_select2-container--open'); $dropdown.css({ position: 'absolute', top: -999999 }); this.$container=$container; }; AttachBody.prototype.render=function (decorated){ var $container=$(''); var $dropdown=decorated.call(this); $container.append($dropdown); this.$dropdownContainer=$container; return $container; }; AttachBody.prototype._hideDropdown=function (decorated){ this.$dropdownContainer.detach(); }; AttachBody.prototype._attachPositioningHandler = function (decorated, container){ var self=this; var scrollEvent='scroll.toolset_select2.' + container.id; var resizeEvent='resize.toolset_select2.' + container.id; var orientationEvent='orientationchange.toolset_select2.' + container.id; var $watchers=this.$container.parents().filter(Utils.hasScroll); $watchers.each(function (){ $(this).data('toolset_select2-scroll-position', { x: $(this).scrollLeft(), y: $(this).scrollTop() }); }); $watchers.on(scrollEvent, function (ev){ var position=$(this).data('toolset_select2-scroll-position'); $(this).scrollTop(position.y); }); $(window).on(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent, function (e){ self._positionDropdown(); self._resizeDropdown(); }); }; AttachBody.prototype._detachPositioningHandler = function (decorated, container){ var scrollEvent='scroll.toolset_select2.' + container.id; var resizeEvent='resize.toolset_select2.' + container.id; var orientationEvent='orientationchange.toolset_select2.' + container.id; var $watchers=this.$container.parents().filter(Utils.hasScroll); $watchers.off(scrollEvent); $(window).off(scrollEvent + ' ' + resizeEvent + ' ' + orientationEvent); }; AttachBody.prototype._positionDropdown=function (){ var $window=$(window); var isCurrentlyAbove=this.$dropdown.hasClass('toolset_select2-dropdown--above'); var isCurrentlyBelow=this.$dropdown.hasClass('toolset_select2-dropdown--below'); var newDirection=null; var offset=this.$container.offset(); offset.bottom=offset.top + this.$container.outerHeight(false); var container={ height: this.$container.outerHeight(false) }; container.top=offset.top; container.bottom=offset.top + container.height; var dropdown={ height: this.$dropdown.outerHeight(false) }; var viewport={ top: $window.scrollTop(), bottom: $window.scrollTop() + $window.height() }; var enoughRoomAbove=viewport.top < (offset.top - dropdown.height); var enoughRoomBelow=viewport.bottom > (offset.bottom + dropdown.height); var css={ left: offset.left, top: container.bottom }; var $offsetParent=this.$dropdownParent; if($offsetParent.css('position')==='static'){ $offsetParent=$offsetParent.offsetParent(); } var parentOffset=$offsetParent.offset(); css.top -=parentOffset.top; css.left -=parentOffset.left; if(!isCurrentlyAbove&&!isCurrentlyBelow){ newDirection='below'; } if(!enoughRoomBelow&&enoughRoomAbove&&!isCurrentlyAbove){ newDirection='above'; }else if(!enoughRoomAbove&&enoughRoomBelow&&isCurrentlyAbove){ newDirection='below'; } if(newDirection=='above' || (isCurrentlyAbove&&newDirection!=='below')){ css.top=container.top - parentOffset.top - dropdown.height; } if(newDirection!=null){ this.$dropdown .removeClass('toolset_select2-dropdown--below toolset_select2-dropdown--above') .addClass('toolset_select2-dropdown--' + newDirection); this.$container .removeClass('toolset_select2-container--below toolset_select2-container--above') .addClass('toolset_select2-container--' + newDirection); } this.$dropdownContainer.css(css); }; AttachBody.prototype._resizeDropdown=function (){ var css={ width: this.$container.outerWidth(false) + 'px' }; if(this.options.get('dropdownAutoWidth')){ css.minWidth=css.width; css.position='relative'; css.width='auto'; } this.$dropdown.css(css); }; AttachBody.prototype._showDropdown=function (decorated){ this.$dropdownContainer.appendTo(this.$dropdownParent); this._positionDropdown(); this._resizeDropdown(); }; return AttachBody; }); Toolset_S2.define('toolset_select2/dropdown/minimumResultsForSearch',[ ], function (){ function countResults (data){ var count=0; for (var d=0; d < data.length; d++){ var item=data[d]; if(item.children){ count +=countResults(item.children); }else{ count++; }} return count; } function MinimumResultsForSearch (decorated, $element, options, dataAdapter){ this.minimumResultsForSearch=options.get('minimumResultsForSearch'); if(this.minimumResultsForSearch < 0){ this.minimumResultsForSearch=Infinity; } decorated.call(this, $element, options, dataAdapter); } MinimumResultsForSearch.prototype.showSearch=function (decorated, params){ if(countResults(params.data.results) < this.minimumResultsForSearch){ return false; } return decorated.call(this, params); }; return MinimumResultsForSearch; }); Toolset_S2.define('toolset_select2/dropdown/selectOnClose',[ ], function (){ function SelectOnClose (){ } SelectOnClose.prototype.bind=function (decorated, container, $container){ var self=this; decorated.call(this, container, $container); container.on('close', function (params){ self._handleSelectOnClose(params); }); }; SelectOnClose.prototype._handleSelectOnClose=function (_, params){ if(params&¶ms.originalSelect2Event!=null){ var event=params.originalSelect2Event; if(event._type==='select'||event._type==='unselect'){ return; }} var $highlightedResults=this.getHighlightedResults(); if($highlightedResults.length < 1){ return; } var data=$highlightedResults.data('data'); if((data.element!=null&&data.element.selected) || (data.element==null&&data.selected) ){ return; } this.trigger('select', { data: data }); }; return SelectOnClose; }); Toolset_S2.define('toolset_select2/dropdown/closeOnSelect',[ ], function (){ function CloseOnSelect (){ } CloseOnSelect.prototype.bind=function (decorated, container, $container){ var self=this; decorated.call(this, container, $container); container.on('select', function (evt){ self._selectTriggered(evt); }); container.on('unselect', function (evt){ self._selectTriggered(evt); }); }; CloseOnSelect.prototype._selectTriggered=function (_, evt){ var originalEvent=evt.originalEvent; if(originalEvent&&originalEvent.ctrlKey){ return; } this.trigger('close', { originalEvent: originalEvent, originalSelect2Event: evt }); }; return CloseOnSelect; }); Toolset_S2.define('toolset_select2/i18n/en',[],function (){ return { errorLoading: function (){ return 'The results could not be loaded.'; }, inputTooLong: function (args){ var overChars=args.input.length - args.maximum; var message='Please delete ' + overChars + ' character'; if(overChars!=1){ message +='s'; } return message; }, inputTooShort: function (args){ var remainingChars=args.minimum - args.input.length; var message='Please enter ' + remainingChars + ' or more characters'; return message; }, loadingMore: function (){ return 'Loading more results…'; }, maximumSelected: function (args){ var message='You can only select ' + args.maximum + ' item'; if(args.maximum!=1){ message +='s'; } return message; }, noResults: function (){ return 'No results found'; }, searching: function (){ return 'Searching…'; }};}); Toolset_S2.define('toolset_select2/defaults',[ 'jquery', 'require', './results', './selection/single', './selection/multiple', './selection/placeholder', './selection/allowClear', './selection/search', './selection/eventRelay', './utils', './translation', './diacritics', './data/select', './data/array', './data/ajax', './data/tags', './data/tokenizer', './data/minimumInputLength', './data/maximumInputLength', './data/maximumSelectionLength', './dropdown', './dropdown/search', './dropdown/hidePlaceholder', './dropdown/infiniteScroll', './dropdown/attachBody', './dropdown/minimumResultsForSearch', './dropdown/selectOnClose', './dropdown/closeOnSelect', './i18n/en' ], function ($, require, ResultsList, SingleSelection, MultipleSelection, Placeholder, AllowClear, SelectionSearch, EventRelay, Utils, Translation, DIACRITICS, SelectData, ArrayData, AjaxData, Tags, Tokenizer, MinimumInputLength, MaximumInputLength, MaximumSelectionLength, Dropdown, DropdownSearch, HidePlaceholder, InfiniteScroll, AttachBody, MinimumResultsForSearch, SelectOnClose, CloseOnSelect, EnglishTranslation){ function Defaults (){ this.reset(); } Defaults.prototype.apply=function (options){ options=$.extend(true, {}, this.defaults, options); if(options.dataAdapter==null){ if(options.ajax!=null){ options.dataAdapter=AjaxData; }else if(options.data!=null){ options.dataAdapter=ArrayData; }else{ options.dataAdapter=SelectData; } if(options.minimumInputLength > 0){ options.dataAdapter=Utils.Decorate(options.dataAdapter, MinimumInputLength ); } if(options.maximumInputLength > 0){ options.dataAdapter=Utils.Decorate(options.dataAdapter, MaximumInputLength ); } if(options.maximumSelectionLength > 0){ options.dataAdapter=Utils.Decorate(options.dataAdapter, MaximumSelectionLength ); } if(options.tags){ options.dataAdapter=Utils.Decorate(options.dataAdapter, Tags); } if(options.tokenSeparators!=null||options.tokenizer!=null){ options.dataAdapter=Utils.Decorate(options.dataAdapter, Tokenizer ); } if(options.query!=null){ var Query=require(options.amdBase + 'compat/query'); options.dataAdapter=Utils.Decorate(options.dataAdapter, Query ); } if(options.initSelection!=null){ var InitSelection=require(options.amdBase + 'compat/initSelection'); options.dataAdapter=Utils.Decorate(options.dataAdapter, InitSelection ); }} if(options.resultsAdapter==null){ options.resultsAdapter=ResultsList; if(options.ajax!=null){ options.resultsAdapter=Utils.Decorate(options.resultsAdapter, InfiniteScroll ); } if(options.placeholder!=null){ options.resultsAdapter=Utils.Decorate(options.resultsAdapter, HidePlaceholder ); } if(options.selectOnClose){ options.resultsAdapter=Utils.Decorate(options.resultsAdapter, SelectOnClose ); }} if(options.dropdownAdapter==null){ if(options.multiple){ options.dropdownAdapter=Dropdown; }else{ var SearchableDropdown=Utils.Decorate(Dropdown, DropdownSearch); options.dropdownAdapter=SearchableDropdown; } if(options.minimumResultsForSearch!==0){ options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter, MinimumResultsForSearch ); } if(options.closeOnSelect){ options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter, CloseOnSelect ); } if(options.dropdownCssClass!=null || options.dropdownCss!=null || options.adaptDropdownCssClass!=null ){ var DropdownCSS=require(options.amdBase + 'compat/dropdownCss'); options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter, DropdownCSS ); } options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter, AttachBody ); } if(options.selectionAdapter==null){ if(options.multiple){ options.selectionAdapter=MultipleSelection; }else{ options.selectionAdapter=SingleSelection; } if(options.placeholder!=null){ options.selectionAdapter=Utils.Decorate(options.selectionAdapter, Placeholder ); } if(options.allowClear){ options.selectionAdapter=Utils.Decorate(options.selectionAdapter, AllowClear ); } if(options.multiple){ options.selectionAdapter=Utils.Decorate(options.selectionAdapter, SelectionSearch ); } if(options.containerCssClass!=null || options.containerCss!=null || options.adaptContainerCssClass!=null ){ var ContainerCSS=require(options.amdBase + 'compat/containerCss'); options.selectionAdapter=Utils.Decorate(options.selectionAdapter, ContainerCSS ); } options.selectionAdapter=Utils.Decorate(options.selectionAdapter, EventRelay ); } if(typeof options.language==='string'){ if(options.language.indexOf('-') > 0){ var languageParts=options.language.split('-'); var baseLanguage=languageParts[0]; options.language=[options.language, baseLanguage]; }else{ options.language=[options.language]; }} if($.isArray(options.language)){ var languages=new Translation(); options.language.push('en'); var languageNames=options.language; for (var l=0; l < languageNames.length; l++){ var name=languageNames[l]; var language={}; try { language=Translation.loadPath(name); } catch (e){ try { name=this.defaults.amdLanguageBase + name; language=Translation.loadPath(name); } catch (ex){ if(options.debug&&window.console&&console.warn){ console.warn('Select2: The language file for "' + name + '" could not be ' + 'automatically loaded. A fallback will be used instead.' ); } continue; }} languages.extend(language); } options.translations=languages; }else{ var baseTranslation=Translation.loadPath(this.defaults.amdLanguageBase + 'en' ); var customTranslation=new Translation(options.language); customTranslation.extend(baseTranslation); options.translations=customTranslation; } return options; }; Defaults.prototype.reset=function (){ function stripDiacritics (text){ function match(a){ return DIACRITICS[a]||a; } return text.replace(/[^\u0000-\u007E]/g, match); } function matcher (params, data){ if($.trim(params.term)===''){ return data; } if(data.children&&data.children.length > 0){ var match=$.extend(true, {}, data); for (var c=data.children.length - 1; c >=0; c--){ var child=data.children[c]; var matches=matcher(params, child); if(matches==null){ match.children.splice(c, 1); }} if(match.children.length > 0){ return match; } return matcher(params, match); } var original=stripDiacritics(data.text).toUpperCase(); var term=stripDiacritics(params.term).toUpperCase(); if(original.indexOf(term) > -1){ return data; } return null; } this.defaults={ amdBase: './', amdLanguageBase: './i18n/', closeOnSelect: true, debug: false, dropdownAutoWidth: false, escapeMarkup: Utils.escapeMarkup, language: EnglishTranslation, matcher: matcher, minimumInputLength: 0, maximumInputLength: 0, maximumSelectionLength: 0, minimumResultsForSearch: 0, selectOnClose: false, sorter: function (data){ return data; }, templateResult: function (result){ return result.text; }, templateSelection: function (selection){ return selection.text; }, theme: 'default', width: 'resolve' };}; Defaults.prototype.set=function (key, value){ var camelKey=$.camelCase(key); var data={}; data[camelKey]=value; var convertedData=Utils._convertData(data); $.extend(this.defaults, convertedData); }; var defaults=new Defaults(); return defaults; }); Toolset_S2.define('toolset_select2/options',[ 'require', 'jquery', './defaults', './utils' ], function (require, $, Defaults, Utils){ function Options (options, $element){ this.options=options; if($element!=null){ this.fromElement($element); } this.options=Defaults.apply(this.options); if($element&&$element.is('input')){ var InputCompat=require(this.get('amdBase') + 'compat/inputData'); this.options.dataAdapter=Utils.Decorate(this.options.dataAdapter, InputCompat ); }} Options.prototype.fromElement=function ($e){ var excludedData=['toolset_select2']; if(this.options.multiple==null){ this.options.multiple=$e.prop('multiple'); } if(this.options.disabled==null){ this.options.disabled=$e.prop('disabled'); } if(this.options.language==null){ if($e.prop('lang')){ this.options.language=$e.prop('lang').toLowerCase(); }else if($e.closest('[lang]').prop('lang')){ this.options.language=$e.closest('[lang]').prop('lang'); }} if(this.options.dir==null){ if($e.prop('dir')){ this.options.dir=$e.prop('dir'); }else if($e.closest('[dir]').prop('dir')){ this.options.dir=$e.closest('[dir]').prop('dir'); }else{ this.options.dir='ltr'; }} $e.prop('disabled', this.options.disabled); $e.prop('multiple', this.options.multiple); if($e.data('toolset_select2Tags')){ if(this.options.debug&&window.console&&console.warn){ console.warn('Select2: The `data-toolset_select2-tags` attribute has been changed to ' + 'use the `data-data` and `data-tags="true"` attributes and will be ' + 'removed in future versions of Select2.' ); } $e.data('data', $e.data('toolset_select2Tags')); $e.data('tags', true); } if($e.data('ajaxUrl')){ if(this.options.debug&&window.console&&console.warn){ console.warn('Select2: The `data-ajax-url` attribute has been changed to ' + '`data-ajax--url` and support for the old attribute will be removed' + ' in future versions of Select2.' ); } $e.attr('ajax--url', $e.data('ajaxUrl')); $e.data('ajax--url', $e.data('ajaxUrl')); } var dataset={}; if($.fn.jquery&&$.fn.jquery.substr(0, 2)=='1.'&&$e[0].dataset){ dataset=$.extend(true, {}, $e[0].dataset, $e.data()); }else{ dataset=$e.data(); } var data=$.extend(true, {}, dataset); data=Utils._convertData(data); for (var key in data){ if($.inArray(key, excludedData) > -1){ continue; } if($.isPlainObject(this.options[key])){ $.extend(this.options[key], data[key]); }else{ this.options[key]=data[key]; }} return this; }; Options.prototype.get=function (key){ return this.options[key]; }; Options.prototype.set=function (key, val){ this.options[key]=val; }; return Options; }); Toolset_S2.define('toolset_select2/core',[ 'jquery', './options', './utils', './keys' ], function ($, Options, Utils, KEYS){ var Select2=function ($element, options){ if($element.data('toolset_select2')!=null){ $element.data('toolset_select2').destroy(); } this.$element=$element; this.id=this._generateId($element); options=options||{}; this.options=new Options(options, $element); Select2.__super__.constructor.call(this); var tabindex=$element.attr('tabindex')||0; $element.data('old-tabindex', tabindex); $element.attr('tabindex', '-1'); var DataAdapter=this.options.get('dataAdapter'); this.dataAdapter=new DataAdapter($element, this.options); var $container=this.render(); this._placeContainer($container); var SelectionAdapter=this.options.get('selectionAdapter'); this.selection=new SelectionAdapter($element, this.options); this.$selection=this.selection.render(); this.selection.position(this.$selection, $container); var DropdownAdapter=this.options.get('dropdownAdapter'); this.dropdown=new DropdownAdapter($element, this.options); this.$dropdown=this.dropdown.render(); this.dropdown.position(this.$dropdown, $container); var ResultsAdapter=this.options.get('resultsAdapter'); this.results=new ResultsAdapter($element, this.options, this.dataAdapter); this.$results=this.results.render(); this.results.position(this.$results, this.$dropdown); var self=this; this._bindAdapters(); this._registerDomEvents(); this._registerDataEvents(); this._registerSelectionEvents(); this._registerDropdownEvents(); this._registerResultsEvents(); this._registerEvents(); this.dataAdapter.current(function (initialData){ self.trigger('selection:update', { data: initialData }); }); $element.addClass('toolset_select2-hidden-accessible'); $element.attr('aria-hidden', 'true'); this._syncAttributes(); $element.data('toolset_select2', this); }; Utils.Extend(Select2, Utils.Observable); Select2.prototype._generateId=function ($element){ var id=''; if($element.attr('id')!=null){ id=$element.attr('id'); }else if($element.attr('name')!=null){ id=$element.attr('name') + '-' + Utils.generateChars(2); }else{ id=Utils.generateChars(4); } id=id.replace(/(:|\.|\[|\]|,)/g, ''); id='toolset_select2-' + id; return id; }; Select2.prototype._placeContainer=function ($container){ $container.insertAfter(this.$element); var width=this._resolveWidth(this.$element, this.options.get('width')); if(width!=null){ $container.css('width', width); }}; Select2.prototype._resolveWidth=function ($element, method){ var WIDTH=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i; if(method=='resolve'){ var styleWidth=this._resolveWidth($element, 'style'); if(styleWidth!=null){ return styleWidth; } return this._resolveWidth($element, 'element'); } if(method=='element'){ var elementWidth=$element.outerWidth(false); if(elementWidth <=0){ return 'auto'; } return elementWidth + 'px'; } if(method=='style'){ var style=$element.attr('style'); if(typeof(style)!=='string'){ return null; } var attrs=style.split(';'); for (var i=0, l=attrs.length; i < l; i=i + 1){ var attr=attrs[i].replace(/\s/g, ''); var matches=attr.match(WIDTH); if(matches!==null&&matches.length >=1){ return matches[1]; }} return null; } return method; }; Select2.prototype._bindAdapters=function (){ this.dataAdapter.bind(this, this.$container); this.selection.bind(this, this.$container); this.dropdown.bind(this, this.$container); this.results.bind(this, this.$container); }; Select2.prototype._registerDomEvents=function (){ var self=this; this.$element.on('change.toolset_select2', function (){ self.dataAdapter.current(function (data){ self.trigger('selection:update', { data: data }); }); }); this.$element.on('focus.toolset_select2', function (evt){ self.trigger('focus', evt); }); this._syncA=Utils.bind(this._syncAttributes, this); this._syncS=Utils.bind(this._syncSubtree, this); if(this.$element[0].attachEvent){ this.$element[0].attachEvent('onpropertychange', this._syncA); } var observer=window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver ; if(observer!=null){ this._observer=new observer(function (mutations){ $.each(mutations, self._syncA); $.each(mutations, self._syncS); }); this._observer.observe(this.$element[0], { attributes: true, childList: true, subtree: false }); }else if(this.$element[0].addEventListener){ this.$element[0].addEventListener('DOMAttrModified', self._syncA, false ); this.$element[0].addEventListener('DOMNodeInserted', self._syncS, false ); this.$element[0].addEventListener('DOMNodeRemoved', self._syncS, false ); }}; Select2.prototype._registerDataEvents=function (){ var self=this; this.dataAdapter.on('*', function (name, params){ self.trigger(name, params); }); }; Select2.prototype._registerSelectionEvents=function (){ var self=this; var nonRelayEvents=['toggle', 'focus']; this.selection.on('toggle', function (){ self.toggleDropdown(); }); this.selection.on('focus', function (params){ self.focus(params); }); this.selection.on('*', function (name, params){ if($.inArray(name, nonRelayEvents)!==-1){ return; } self.trigger(name, params); }); }; Select2.prototype._registerDropdownEvents=function (){ var self=this; this.dropdown.on('*', function (name, params){ self.trigger(name, params); }); }; Select2.prototype._registerResultsEvents=function (){ var self=this; this.results.on('*', function (name, params){ self.trigger(name, params); }); }; Select2.prototype._registerEvents=function (){ var self=this; this.on('open', function (){ self.$container.addClass('toolset_select2-container--open'); }); this.on('close', function (){ self.$container.removeClass('toolset_select2-container--open'); }); this.on('enable', function (){ self.$container.removeClass('toolset_select2-container--disabled'); }); this.on('disable', function (){ self.$container.addClass('toolset_select2-container--disabled'); }); this.on('blur', function (){ self.$container.removeClass('toolset_select2-container--focus'); }); this.on('query', function (params){ if(!self.isOpen()){ self.trigger('open', {}); } this.dataAdapter.query(params, function (data){ self.trigger('results:all', { data: data, query: params }); }); }); this.on('query:append', function (params){ this.dataAdapter.query(params, function (data){ self.trigger('results:append', { data: data, query: params }); }); }); this.on('keypress', function (evt){ var key=evt.which; if(self.isOpen()){ if(key===KEYS.ESC||key===KEYS.TAB || (key===KEYS.UP&&evt.altKey)){ self.close(); evt.preventDefault(); }else if(key===KEYS.ENTER){ self.trigger('results:select', {}); evt.preventDefault(); }else if((key===KEYS.SPACE&&evt.ctrlKey)){ self.trigger('results:toggle', {}); evt.preventDefault(); }else if(key===KEYS.UP){ self.trigger('results:previous', {}); evt.preventDefault(); }else if(key===KEYS.DOWN){ self.trigger('results:next', {}); evt.preventDefault(); }}else{ if(key===KEYS.ENTER||key===KEYS.SPACE || (key===KEYS.DOWN&&evt.altKey)){ self.open(); evt.preventDefault(); }} }); }; Select2.prototype._syncAttributes=function (){ this.options.set('disabled', this.$element.prop('disabled')); if(this.options.get('disabled')){ if(this.isOpen()){ this.close(); } this.trigger('disable', {}); }else{ this.trigger('enable', {}); }}; Select2.prototype._syncSubtree=function (evt, mutations){ var changed=false; var self=this; if(evt&&evt.target&&( evt.target.nodeName!=='OPTION'&&evt.target.nodeName!=='OPTGROUP' ) ){ return; } if(!mutations){ changed=true; }else if(mutations.addedNodes&&mutations.addedNodes.length > 0){ for (var n=0; n < mutations.addedNodes.length; n++){ var node=mutations.addedNodes[n]; if(node.selected){ changed=true; }} }else if(mutations.removedNodes&&mutations.removedNodes.length > 0){ changed=true; } if(changed){ this.dataAdapter.current(function (currentData){ self.trigger('selection:update', { data: currentData }); }); }}; Select2.prototype.trigger=function (name, args){ var actualTrigger=Select2.__super__.trigger; var preTriggerMap={ 'open': 'opening', 'close': 'closing', 'select': 'selecting', 'unselect': 'unselecting' }; if(args===undefined){ args={};} if(name in preTriggerMap){ var preTriggerName=preTriggerMap[name]; var preTriggerArgs={ prevented: false, name: name, args: args }; actualTrigger.call(this, preTriggerName, preTriggerArgs); if(preTriggerArgs.prevented){ args.prevented=true; return; }} actualTrigger.call(this, name, args); }; Select2.prototype.toggleDropdown=function (){ if(this.options.get('disabled')){ return; } if(this.isOpen()){ this.close(); }else{ this.open(); }}; Select2.prototype.open=function (){ if(this.isOpen()){ return; } this.trigger('query', {}); }; Select2.prototype.close=function (){ if(!this.isOpen()){ return; } this.trigger('close', {}); }; Select2.prototype.isOpen=function (){ return this.$container.hasClass('toolset_select2-container--open'); }; Select2.prototype.hasFocus=function (){ return this.$container.hasClass('toolset_select2-container--focus'); }; Select2.prototype.focus=function (data){ if(this.hasFocus()){ return; } this.$container.addClass('toolset_select2-container--focus'); this.trigger('focus', {}); }; Select2.prototype.enable=function (args){ if(this.options.get('debug')&&window.console&&console.warn){ console.warn('Select2: The `toolset_select2("enable")` method has been deprecated and will' + ' be removed in later Select2 versions. Use $element.prop("disabled")' + ' instead.' ); } if(args==null||args.length===0){ args=[true]; } var disabled = !args[0]; this.$element.prop('disabled', disabled); }; Select2.prototype.data=function (){ if(this.options.get('debug') && arguments.length > 0&&window.console&&console.warn){ console.warn('Select2: Data can no longer be set using `toolset_select2("data")`. You ' + 'should consider setting the value instead using `$element.val()`.' ); } var data=[]; this.dataAdapter.current(function (currentData){ data=currentData; }); return data; }; Select2.prototype.val=function (args){ if(this.options.get('debug')&&window.console&&console.warn){ console.warn('Select2: The `toolset_select2("val")` method has been deprecated and will be' + ' removed in later Select2 versions. Use $element.val() instead.' ); } if(args==null||args.length===0){ return this.$element.val(); } var newVal=args[0]; if($.isArray(newVal)){ newVal=$.map(newVal, function (obj){ return obj.toString(); }); } this.$element.val(newVal).trigger('change'); }; Select2.prototype.destroy=function (){ this.$container.remove(); if(this.$element[0].detachEvent){ this.$element[0].detachEvent('onpropertychange', this._syncA); } if(this._observer!=null){ this._observer.disconnect(); this._observer=null; }else if(this.$element[0].removeEventListener){ this.$element[0] .removeEventListener('DOMAttrModified', this._syncA, false); this.$element[0] .removeEventListener('DOMNodeInserted', this._syncS, false); this.$element[0] .removeEventListener('DOMNodeRemoved', this._syncS, false); } this._syncA=null; this._syncS=null; this.$element.off('.toolset_select2'); this.$element.attr('tabindex', this.$element.data('old-tabindex')); this.$element.removeClass('toolset_select2-hidden-accessible'); this.$element.attr('aria-hidden', 'false'); this.$element.removeData('toolset_select2'); this.dataAdapter.destroy(); this.selection.destroy(); this.dropdown.destroy(); this.results.destroy(); this.dataAdapter=null; this.selection=null; this.dropdown=null; this.results=null; }; Select2.prototype.render=function (){ var $container=$( '' + '' + '' + '' ); $container.attr('dir', this.options.get('dir')); this.$container=$container; this.$container.addClass('toolset_select2-container--' + this.options.get('theme')); $container.data('element', this.$element); return $container; }; return Select2; }); Toolset_S2.define('jquery-mousewheel',[ 'jquery' ], function ($){ return $; }); Toolset_S2.define('jquery.toolset_select2',[ 'jquery', 'jquery-mousewheel', './toolset_select2/core', './toolset_select2/defaults' ], function ($, _, Select2, Defaults){ if($.fn.toolset_select2==null){ var thisMethods=['open', 'close', 'destroy']; $.fn.toolset_select2=function (options){ options=options||{}; if(typeof options==='object'){ this.each(function (){ var instanceOptions=$.extend(true, {}, options); var instance=new Select2($(this), instanceOptions); }); return this; }else if(typeof options==='string'){ var ret; var args=Array.prototype.slice.call(arguments, 1); this.each(function (){ var instance=$(this).data('toolset_select2'); if(instance==null&&window.console&&console.error){ console.log('The toolset_select2(\'' + options + '\') method was called on an ' + 'element that is not using Select2.' ); return; } ret=instance[options].apply(instance, args); }); if($.inArray(options, thisMethods) > -1){ return this; } return ret; }else{ throw new Error('Invalid arguments for Select2: ' + options); }};} if($.fn.toolset_select2.defaults==null){ $.fn.toolset_select2.defaults=Defaults; } return Select2; }); return { define: Toolset_S2.define, require: Toolset_S2.require };}()); var toolset_select2=Toolset_S2.require('jquery.toolset_select2'); jQuery.fn.toolset_select2.amd=Toolset_S2; return toolset_select2; })); var CREDFrontendSelect2=CREDFrontendSelect2||{}; CREDFrontendSelect2.init=function (){ var self=this; self.ajaxurl=cred_select2_frontend_settings.ajaxurl; self.select2FieldsList=cred_select2_frontend_settings.select2_fields_list; self.lang=cred_select2_frontend_settings.cred_lang; self.executeSelect2FieldsTransformation=function (){ for (var htmlFormId in self.select2FieldsList){ for (var fieldName in self.select2FieldsList[htmlFormId]){ var action=self.select2FieldsList[htmlFormId][fieldName].action; var parameter=self.select2FieldsList[htmlFormId][fieldName].parameter; var fieldSettings=self.select2FieldsList[htmlFormId][fieldName].field_settings; var currentOption=(_.has(self.select2FieldsList[htmlFormId][fieldName], 'current_option')) ? self.select2FieldsList[htmlFormId][fieldName].current_option:null; if(!action){ self.transformSelectToSelect2(htmlFormId, fieldName, currentOption, parameter, fieldSettings); }else{ if(_.has(fieldSettings, 'is_relationship')){ self.transformSelectToSelect2RelationshipAjax(htmlFormId, fieldName, currentOption, action, fieldSettings); }else{ self.transformSelectToSelect2Ajax(htmlFormId, fieldName, currentOption, action, parameter, fieldSettings); }} }} }; self.transformSelectToSelect2RelationshipAjax=function (htmlFormId, fieldName, currentOption, action, fieldSettings){ var is_multiple=(fieldSettings['type']==='multiselect'); if(is_multiple){ fieldName +='[]'; } var placeholder=''; var hasPlaceholder=_.has(fieldSettings, 'placeholder'); if(hasPlaceholder){ placeholder=fieldSettings['placeholder']; } var hasCurrentOption=(currentOption!==null); var $currentFieldSelector=jQuery('select[name="' + fieldName + '"]', '#' + htmlFormId); var readonlySelector=(_.has(fieldSettings, 'readonly')&&fieldSettings['readonly']===true) ? true:false; if(readonlySelector&&hasCurrentOption){ $currentFieldSelector.append(''); $currentFieldSelector.toolset_select2('val', currentOption.value, true); $currentFieldSelector.toolset_select2(); return; } $currentFieldSelector.toolset_select2({ width: 'resolve', allowClear: true, placeholder: placeholder, multiple: is_multiple, minimumInputLength: 0, maximumSelectionLength: 20, ajax: { url: self.ajaxurl, dataType: 'json', delay: 250, type: 'POST', cache: false, data: function (params){ return { q: (_.has(params, 'term')) ? params.term:'', page: (params.page) ? params.page:0, action: action, slug: fieldSettings.slug, role: fieldSettings.role, post_id: fieldSettings.post_id, cred_lang: self.lang, orderBy: $currentFieldSelector.data('orderby'), order: $currentFieldSelector.data('order'), author: $currentFieldSelector.data('author') };}, processResults: function (response){ if(response.success){ return { results: response.data };}else{ console.log(response.data.message); return { results: [] };}}, error: function (ajaxContext){ console.log(ajaxContext); }, complete: function (){ }} }); if(hasCurrentOption){ $currentFieldSelector.append(''); $currentFieldSelector.toolset_select2('val', currentOption.value, true); }}; self.transformSelectToSelect2Ajax=function (htmlFormId, fieldName, currentOption, action, parameter, fieldSettings){ var is_multiple=(fieldSettings['type']==='multiselect'); if(is_multiple){ fieldName +='[]'; } var placeholder=''; var hasPlaceholder=_.has(fieldSettings, 'placeholder'); if(hasPlaceholder){ placeholder=fieldSettings['placeholder']; } var hasCurrentOption=(currentOption!==null); var $currentFieldSelector=jQuery('select[name="' + fieldName + '"]', '#' + htmlFormId); $currentFieldSelector.toolset_select2({ width: 'resolve', allowClear: true, placeholder: placeholder, multiple: is_multiple, minimumInputLength: 0, maximumSelectionLength: 20, ajax: { url: self.ajaxurl, dataType: 'json', delay: 250, type: 'POST', cache: false, data: function (params){ return { q: (params.term) ? params.term:'', page: (params.page) ? params.page:0, action: action, parameter: parameter, wpml_context: fieldSettings.wpml_context, wpml_name: fieldSettings.slug, cred_lang: self.lang, orderBy: $currentFieldSelector.data('orderby'), order: $currentFieldSelector.data('order'), author: $currentFieldSelector.data('author') };}, processResults: function (response){ if(response.success){ return { results: response.data };}else{ console.log(response.data.message); return { results: [] };}}, error: function (ajaxContext){ console.log(ajaxContext); }, complete: function (){ }} }); if(hasCurrentOption){ $currentFieldSelector.append(''); $currentFieldSelector.toolset_select2('val', currentOption.value, true); }}; self.transformSelectToSelect2=function (htmlFormId, fieldName, currentOption, parameter, fieldSettings){ var is_multiple=fieldSettings['type']==='multiselect'; if(is_multiple){ fieldName +='[]'; } var placeholder='— Select —'; var has_placeholder=_.has(fieldSettings, 'placeholder'); if(has_placeholder){ placeholder=fieldSettings['placeholder']; } var hasCurrentOption=(currentOption!==null); var $currentFieldSelector=jQuery('select[name="' + fieldName + '"]', '#' + htmlFormId); $currentFieldSelector.toolset_select2({ data: parameter, placeholder: placeholder, multiple: is_multiple, minimumInputLength: 1, allowClear: true }); if(hasCurrentOption){ $currentFieldSelector.append(''); $currentFieldSelector.toolset_select2('val', currentOption.value, true); }}; self.executeSelect2FieldsTransformation(); }; jQuery(document).ready(function (){ var credSelect2FrontendSetting=new CREDFrontendSelect2.init(); var boundOnCREDFrontendSelect2Init=_.bind(CREDFrontendSelect2.init, CREDFrontendSelect2); Toolset.hooks.addAction('cred_form_ajax_completed', boundOnCREDFrontendSelect2Init); }); var DDLayout=DDLayout||{}; DDLayout.DDL_TabsCellFrontend=function($){ self.init=function(){ self.fixActiveClasses(); }; self.fixActiveClasses=function(){ if(jQuery('.ddl-tab-content.tab-content').length===0){ return; } jQuery.each(jQuery('.ddl-tab-content.tab-content'), function(key, value){ jQuery(value).find('.tab-pane').first().addClass('active'); }); }; self.init(); }; (function ($){ jQuery(function ($){ new DDLayout.DDL_TabsCellFrontend($); }); }(jQuery)); !function(a,b){function c(){function a(){"undefined"!=typeof _wpmejsSettings&&(c=b.extend(!0,{},_wpmejsSettings)),c.classPrefix="mejs-",c.success=c.success||function(a){var b,c;a.rendererName&&-1!==a.rendererName.indexOf("flash")&&(b=a.attributes.autoplay&&"false"!==a.attributes.autoplay,c=a.attributes.loop&&"false"!==a.attributes.loop,b&&a.addEventListener("canplay",function(){a.play()},!1),c&&a.addEventListener("ended",function(){a.play()},!1))},c.customError=function(a,b){if(-1!==a.rendererName.indexOf("flash")||-1!==a.rendererName.indexOf("flv"))return''+mejsL10n.strings["mejs.download-video"]+""},b(".wp-audio-shortcode, .wp-video-shortcode").not(".mejs-container").filter(function(){return!b(this).parent().hasClass("mejs-mediaelement")}).mediaelementplayer(c)}var c={};return{initialize:a}}a.wp=a.wp||{},a.wp.mediaelement=new c,b(a.wp.mediaelement.initialize)}(window,jQuery); window.wp=window.wp||{},function(a){var b="undefined"==typeof _wpUtilSettings?{}:_wpUtilSettings;wp.template=_.memoize(function(b){var c,d={evaluate:/<#([\s\S]+?)#>/g,interpolate:/\{\{\{([\s\S]+?)\}\}\}/g,escape:/\{\{([^\}]+?)\}\}(?!\})/g,variable:"data"};return function(e){return(c=c||_.template(a("#tmpl-"+b).html(),d))(e)}}),wp.ajax={settings:b.ajax||{},post:function(a,b){return wp.ajax.send({data:_.isObject(a)?a:_.extend(b||{},{action:a})})},send:function(b,c){var d,e;return _.isObject(b)?c=b:(c=c||{},c.data=_.extend(c.data||{},{action:b})),c=_.defaults(c||{},{type:"POST",url:wp.ajax.settings.url,context:this}),e=a.Deferred(function(b){c.success&&b.done(c.success),c.error&&b.fail(c.error),delete c.success,delete c.error,b.jqXHR=a.ajax(c).done(function(a){"1"!==a&&1!==a||(a={success:!0}),_.isObject(a)&&!_.isUndefined(a.success)?b[a.success?"resolveWith":"rejectWith"](this,[a.data]):b.rejectWith(this,[a])}).fail(function(){b.rejectWith(this,arguments)})}),d=e.promise(),d.abort=function(){return e.jqXHR.abort(),this},d}}}(jQuery); !function(a,b,c){"use strict";function d(){a(".wp-playlist:not(:has(.mejs-container))").each(function(){new e({el:this})})}window.wp=window.wp||{};var e=c.View.extend({initialize:function(d){this.index=0,this.settings={},this.data=d.metadata||a.parseJSON(this.$("script.wp-playlist-script").html()),this.playerNode=this.$(this.data.type),this.tracks=new c.Collection(this.data.tracks),this.current=this.tracks.first(),"audio"===this.data.type&&(this.currentTemplate=wp.template("wp-playlist-current-item"),this.currentNode=this.$(".wp-playlist-current-item")),this.renderCurrent(),this.data.tracklist&&(this.itemTemplate=wp.template("wp-playlist-item"),this.playingClass="wp-playlist-playing",this.renderTracks()),this.playerNode.attr("src",this.current.get("src")),b.bindAll(this,"bindPlayer","bindResetPlayer","setPlayer","ended","clickTrack"),b.isUndefined(window._wpmejsSettings)||(this.settings=b.clone(_wpmejsSettings)),this.settings.success=this.bindPlayer,this.setPlayer()},bindPlayer:function(a){this.mejs=a,this.mejs.addEventListener("ended",this.ended)},bindResetPlayer:function(a){this.bindPlayer(a),this.playCurrentSrc()},setPlayer:function(a){this.player&&(this.player.pause(),this.player.remove(),this.playerNode=this.$(this.data.type)),a&&(this.playerNode.attr("src",this.current.get("src")),this.settings.success=this.bindResetPlayer),this.player=new MediaElementPlayer(this.playerNode.get(0),this.settings)},playCurrentSrc:function(){this.renderCurrent(),this.mejs.setSrc(this.playerNode.attr("src")),this.mejs.load(),this.mejs.play()},renderCurrent:function(){var a,b="wp-includes/images/media/video.png";"video"===this.data.type?(this.data.images&&this.current.get("image")&&-1===this.current.get("image").src.indexOf(b)&&this.playerNode.attr("poster",this.current.get("image").src),a=this.current.get("dimensions").resized,this.playerNode.attr(a)):(this.data.images||this.current.set("image",!1),this.currentNode.html(this.currentTemplate(this.current.toJSON())))},renderTracks:function(){var b=this,c=1,d=a('
          ');this.tracks.each(function(a){b.data.images||a.set("image",!1),a.set("artists",b.data.artists),a.set("index",!!b.data.tracknumbers&&c),d.append(b.itemTemplate(a.toJSON())),c+=1}),this.$el.append(d),this.$(".wp-playlist-item").eq(0).addClass(this.playingClass)},events:{"click .wp-playlist-item":"clickTrack","click .wp-playlist-next":"next","click .wp-playlist-prev":"prev"},clickTrack:function(a){a.preventDefault(),this.index=this.$(".wp-playlist-item").index(a.currentTarget),this.setCurrent()},ended:function(){this.index+1=this.tracks.length?0:this.index+1,this.setCurrent()},prev:function(){this.index=this.index-1<0?this.tracks.length-1:this.index-1,this.setCurrent()},loadCurrent:function(){var a=this.playerNode.attr("src")&&this.playerNode.attr("src").split(".").pop(),b=this.current.get("src").split(".").pop();this.mejs&&this.mejs.pause(),a!==b?this.setPlayer(!0):(this.playerNode.attr("src",this.current.get("src")),this.playCurrentSrc())},setCurrent:function(){this.current=this.tracks.at(this.index),this.data.tracklist&&this.$(".wp-playlist-item").removeClass(this.playingClass).eq(this.index).addClass(this.playingClass),this.loadCurrent()}});window.wp.playlist={initialize:d},a(document).ready(d),window.WPPlaylistView=e}(jQuery,_,Backbone); var WPViews=WPViews||{}; var wpv_stop_rollover={}; window.wpvPaginationAjaxLoaded={}; window.wpvPaginationAnimationFinished={}; window.wpvPaginationQueue={}; ;(function(){ jQuery.fn.wpv_clone=function(){ var result=jQuery.fn.clone.apply(this, arguments), my_textareas=this.find('textarea').add(this.filter('textarea')), result_textareas=result.find('textarea').add(result.filter('textarea')), my_selects=this.find('select').add(this.filter('select')), result_selects=result.find('select').add(result.filter('select')); for(var i=0, l=my_textareas.length; i < l; ++i){ jQuery(result_textareas[i]).val(jQuery(my_textareas[i]).val()); } for(var i=0, l=my_selects.length; i < l; ++i){ for(var j=0, m=my_selects[i].options.length; j < m; ++j){ if(my_selects[i].options[j].selected===true){ result_selects[i].options[j].selected=true; }else{ result_selects[i].options[j].selected=false; }} } return result; };})(); WPViews.ViewFrontendUtils=function($){ var self=this; self.datepicker_style_id='js-toolset-datepicker-style'; self.is_datepicker_style_loaded=false; self.just_return=function(){ return; }; self.extract_url_query_parameters=function(query_string){ var query_string_pairs={}; if(query_string==""){ return query_string_pairs; } var query_string_split=query_string.split('&'), query_string_split_length=query_string_split.length; for(var i=0; i < query_string_split_length; ++i){ var qs_part=query_string_split[i].split('='); if(qs_part.length!=2){ continue; }; var thiz_key=qs_part[0], thiz_val=decodeURIComponent(qs_part[1].replace(/\+/g, " ")); thiz_key=thiz_key.replace(/(\[)\d?(\])/, ""); thiz_key=thiz_key.replace("[]", ""); thiz_key=thiz_key.replace(/(%5B)\d?(%5D)/, ""); thiz_key=thiz_key.replace("%5B%5D", ""); thiz_key=thiz_key.replace(/(%255B)\d?(%255D)/, ""); thiz_key=thiz_key.replace("%255B%255D", ""); if(query_string_pairs.hasOwnProperty(thiz_key)){ if(query_string_pairs[thiz_key]!=thiz_val){ query_string_pairs[thiz_key] +='##URLARRAYVALHACK##' + thiz_val; }else{ query_string_pairs[thiz_key]=thiz_val; }}else{ query_string_pairs[thiz_key]=thiz_val; }} return query_string_pairs; }; self.get_extra_url_query_parameters_by_form=function(form){ var query_string=self.extract_url_query_parameters(window.location.search.substr(1)), data={}, force_from_form = !(form.hasClass('js-wpv-dps-enabled') || form.hasClass('js-wpv-ajax-results-enabled') || form.hasClass('js-wpv-ajax-results-submit-enabled') ); for(var prop in query_string){ if(query_string.hasOwnProperty(prop) && ! data.hasOwnProperty(prop) && ( force_from_form || form.find('[name="' + prop + '"], [name="' + prop + '\\[\\]"]').length===0 ) ){ data[ prop ]=query_string[ prop ]; }} return data; }; self.set_extra_url_query_parameters_by_form=function(form){ var extra=self.get_extra_url_query_parameters_by_form(form); $.each(extra, function(key, value){ if(form.find('[name="' + key + '"], [name="' + key + '\\[\\]"]').length===0){ var pieces=value.split('##URLARRAYVALHACK##'), pieces_length=pieces.length; if(pieces_length < 2){ $('').attr({ type: 'hidden', name: key, value: value }) .appendTo(form); }else{ for(var iter=0; iter < pieces_length; iter++){ $('').attr({ type: 'hidden', name: key + "[]", value: pieces[iter] }) .appendTo(form); }} }}); }; self.maybe_load_datepicker_style=function(){ if(! self.is_datepicker_style_loaded){ if(document.getElementById(self.datepicker_style_id)){ self.is_datepicker_style_loaded=true; }else{ var head=document.getElementsByTagName('head')[0], link=document.createElement('link'); link.id=self.datepicker_style_id; link.rel='stylesheet'; link.type='text/css'; link.href=wpv_pagination_local.datepicker_style_url; link.media='all'; head.appendChild(link); self.is_datepicker_style_loaded=true; }} }; self.destroy_frontend_datepicker=function(){ $(".js-wpv-frontend-datepicker.js-wpv-frontend-datepicker-inited") .removeClass('js-wpv-frontend-datepicker-inited') .datepicker("destroy"); }; self.render_frontend_datepicker=function(){ $('.js-wpv-frontend-datepicker:not(.js-wpv-frontend-datepicker-inited)').each(function(){ self.maybe_load_datepicker_style(); var thiz=$(this); thiz .addClass('js-wpv-frontend-datepicker-inited') .datepicker({ onSelect: function(dateText, inst){ var url_param=thiz.data('param'), data='date=' + dateText, form=thiz.closest('form'); data +='&date-format=' + $('.js-wpv-date-param-' + url_param + '-format').val(); data +='&action=wpv_format_date'; $.post(wpv_pagination_local.front_ajaxurl, data, function(response){ response=$.parseJSON(response); form.find('.js-wpv-date-param-' + url_param).html(response['display']); form.find('.js-wpv-date-front-end-clear-' + url_param).show(); form.find('.js-wpv-date-param-' + url_param + '-value').val(response['timestamp']).trigger('change'); }); }, dateFormat: 'ddmmyy', minDate: wpv_pagination_local.datepicker_min_date, maxDate: wpv_pagination_local.datepicker_max_date, showOn: "button", buttonImage: wpv_pagination_local.calendar_image, buttonText: wpv_pagination_local.calendar_text, buttonImageOnly: true, changeMonth: true, changeYear: true }); }); }; self.clone_form=function(fil, targets){ var cloned=fil.wpv_clone(); targets.each(function(){ $(this).replaceWith(cloned); }); }; self.render_frontend_media_shortcodes=function(container){ container.find('.wp-audio-shortcode, .wp-video-shortcode').each(function(){ var thiz=$(this); thiz.mediaelementplayer(); }); container.find('.wp-playlist').each(function(){ var thiz=$(this); return new WPPlaylistView({ el: this }); }); }; self.get_form_element_type=function(selector){ if(selector.length > 0){ return selector[0].tagName=="INPUT" ? selector[0].type.toLowerCase():selector[0].tagName.toLowerCase(); }else{ return ''; }} self.get_hidden_item_width=function(item){ var item_clone=item .clone() .css({ 'display': 'block', 'visibility': 'visible', 'position': 'absolute', 'z-index': '-99999', 'left': '99999999px', 'top': '0px', 'white-space': 'nowrap' }) .appendTo('body'), width=item_clone.outerWidth(); item_clone.remove(); return width; }; self.get_updated_query_results=function(view_number, page, form, expect){ var data={}, sort={}, environment={}, search={}, extra={}. attributes={}, lang=(typeof icl_lang=='undefined') ? false:icl_lang, parametric_data=form.data('parametric'); sort=WPViews.view_sorting.get_sort_data(view_number, form); if(parametric_data['environment'].current_post_id > 0){ environment['wpv_aux_current_post_id']=parametric_data['environment'].current_post_id; } if(parametric_data['environment'].parent_post_id > 0){ environment['wpv_aux_parent_post_id']=parametric_data['environment'].parent_post_id; } if(parametric_data['environment'].parent_term_id > 0){ environment['wpv_aux_parent_term_id']=parametric_data['environment'].parent_term_id; } if(parametric_data['environment'].parent_user_id > 0){ environment['wpv_aux_parent_user_id']=parametric_data['environment'].parent_user_id; } environment['archive']=parametric_data['environment'].archive; if(form.find('.js-wpv-post-relationship-update').length){ search['dps_pr']=form.find('.js-wpv-post-relationship-update').serializeArray(); } if(form.hasClass('js-wpv-dps-enabled') || form.hasClass('js-wpv-ajax-results-enabled') || form.hasClass('js-wpv-ajax-results-submit-enabled') ){ search['dps_general']=form.find('.js-wpv-filter-trigger, .js-wpv-filter-trigger-delayed').serializeArray(); } attributes=parametric_data['attributes']; extra=self.get_extra_url_query_parameters_by_form(form); data={ 'view_number': view_number, page: page, sort: sort, attributes: attributes, environment: environment, search: search, extra: extra, expect: expect }; if(lang){ data['lang']=lang; } switch(parametric_data.query){ case 'archive': data['action']='wpv_get_archive_query_results'; data['loop']=parametric_data.loop; break; default: data['action']='wpv_get_view_query_results'; data['id']=parametric_data.id; if(form.attr('data-targetid')){ data['target_id']=form.data('targetid'); }else if($('.js-wpv-form-only.js-wpv-filter-form-' + view_number).length > 0){ data['target_id']=$('.js-wpv-form-only.js-wpv-filter-form-' + view_number).data('targetid'); } data['wpv_view_widget_id']=parametric_data['widget_id']; break; } return $.ajax({ type: "POST", dataType: "json", url: wpv_pagination_local.front_ajaxurl, data: data }); }; self.updateUrlQuery=function(key, value, url){ if(!url){ url=window.location.href; } var re=new RegExp("([?&])" + key + "=.*?(&|#|$)(.*)", "gi"); var hash; if(re.test(url)){ if(typeof value!=='undefined'&&value!==null){ return url.replace(re, '$1' + key + "=" + value + '$2$3'); }else{ hash=url.split('#'); url=hash[0].replace(re, '$1$3').replace(/(&|\?)$/, ''); if(typeof hash[1]!=='undefined'&&hash[1]!==null){ url +='#' + hash[1]; } return url; }}else{ if(typeof value!=='undefined'&&value!==null){ var separator=url.indexOf('?')!==-1 ? '&':'?'; hash=url.split('#'); url=hash[0] + separator + key + '=' + value; if(typeof hash[1]!=='undefined'&&hash[1]!==null){ url +='#' + hash[1]; } return url; }else{ return url; }} }; $(window).on('resize', _.debounce(function(){ $('.js-wpv-layout-responsive').each(function(){ $(this).css('width', ''); }) .promise() .done(function(){ $(document).trigger('js_event_wpv_layout_responsive_resize_completed'); }); }, wpv_pagination_local.resize_debounce_tolerance )); self.init=function(){ self.render_frontend_datepicker(); }; self.init(); }; WPViews.ViewSorting=function($){ var self=this; self.get_sort_data=function(view_number, form){ var sort={}, parametric_data=form.data('parametric'); sort['wpv_sort_orderby']=parametric_data['sort']['orderby']; sort['wpv_sort_order']=parametric_data['sort']['order']; sort['wpv_sort_orderby_as']=parametric_data['sort']['orderby_as']; sort['wpv_sort_orderby_second']=parametric_data['sort']['orderby_second']; sort['wpv_sort_order_second']=parametric_data['sort']['order_second']; if(form.find('.js-wpv-sort-control-orderby').length > 0){ var orderby_type=WPViews.view_frontend_utils.get_form_element_type(form.find('.js-wpv-sort-control-orderby')); switch(orderby_type){ case 'select': sort['wpv_sort_orderby']=form.find('.js-wpv-sort-control-orderby').val(); if(form.find('.js-wpv-sort-control-orderby option:selected').data('orderbyas')){ sort['wpv_sort_orderby_as']=form.find('.js-wpv-sort-control-orderby option:selected').data('orderbyas'); }else if(sort['wpv_sort_orderby']!=parametric_data['sort']['orderby']){ sort['wpv_sort_orderby_as']=''; } break; case 'radio': sort['wpv_sort_orderby']=form.find('.js-wpv-sort-control-orderby:checked').val(); if(form.find('.js-wpv-sort-control-orderby:checked').data('orderbyas')){ sort['wpv_sort_orderby_as']=form.find('.js-wpv-sort-control-orderby:checked').data('orderbyas'); }else if(sort['wpv_sort_orderby']!=parametric_data['sort']['orderby']){ sort['wpv_sort_orderby_as']=''; } break; case 'text': case 'hidden': sort['wpv_sort_orderby']=form.find('.js-wpv-sort-control-orderby').val(); if(form.find('.js-wpv-sort-control-orderby').data('orderbyas')){ sort['wpv_sort_orderby_as']=form.find('.js-wpv-sort-control-orderby').data('orderbyas'); }else if(sort['wpv_sort_orderby']!=parametric_data['sort']['orderby']){ sort['wpv_sort_orderby_as']=''; } break; }} if(form.find('.js-wpv-sort-control-order').length > 0){ var order_type=WPViews.view_frontend_utils.get_form_element_type(form.find('.js-wpv-sort-control-order')); switch(order_type){ case 'select': sort['wpv_sort_order']=form.find('.js-wpv-sort-control-order').val(); break; case 'radio': sort['wpv_sort_order']=form.find('.js-wpv-sort-control-order:checked').val(); break; case 'text': case 'hidden': sort['wpv_sort_order']=form.find('.js-wpv-sort-control-order').val(); break; }} if(''===sort['wpv_sort_order'] && form.find('.js-wpv-sort-control-orderby').length > 0 ){ var order_type=WPViews.view_frontend_utils.get_form_element_type(form.find('.js-wpv-sort-control-orderby')); switch(order_type){ case 'select': sort['wpv_sort_order']=form.find('.js-wpv-sort-control-orderby option:selected').data('forceorder'); break; case 'radio': sort['wpv_sort_order']=form.find('.js-wpv-sort-control-orderby:checked').data('forceorder'); break; case 'text': case 'hidden': sort['wpv_sort_order']=form.find('.js-wpv-sort-control-orderby').data('forceorder'); break; }} return sort; } self.set_sort_data=function(form, sort){ self.set_sort_data_inside_form(form, sort) .set_sort_data_outside_form(form, sort); return self; }; self.set_sort_data_for_pagination=function(form){ var sort={}, parametric_data=form.data('parametric');; if(form.find('.js-wpv-sort-control-orderby').length > 0){ var orderby_type=WPViews.view_frontend_utils.get_form_element_type(form.find('.js-wpv-sort-control-orderby')); switch(orderby_type){ case 'select': sort['orderby']=form.find('.js-wpv-sort-control-orderby').val(); if(form.find('.js-wpv-sort-control-orderby option:selected').data('orderbyas')){ sort['orderby_as']=form.find('.js-wpv-sort-control-orderby option:selected').data('orderbyas'); }else if(sort['orderby']!=parametric_data['sort']['orderby']){ sort['orderby_as']=''; } if(form.find('.js-wpv-sort-control-orderby option:selected').data('forceorder')){ sort['order']=form.find('.js-wpv-sort-control-orderby option:selected').data('forceorder'); } break; case 'radio': sort['orderby']=form.find('.js-wpv-sort-control-orderby:checked').val(); if(form.find('.js-wpv-sort-control-orderby:checked').data('orderbyas')){ sort['orderby_as']=form.find('.js-wpv-sort-control-orderby:checked').data('orderbyas'); }else if(sort['orderby']!=parametric_data['sort']['orderby']){ sort['orderby_as']=''; } if(form.find('.js-wpv-sort-control-orderby:checked').data('forceorder')){ sort['order']=form.find('.js-wpv-sort-control-orderby:checked').data('forceorder'); } break; case 'text': case 'hidden': sort['orderby']=form.find('.js-wpv-sort-control-orderby').val(); if(form.find('.js-wpv-sort-control-orderby').data('orderbyas')){ sort['orderby_as']=form.find('.js-wpv-sort-control-orderby').data('orderbyas'); }else if(sort['orderby']!=parametric_data['sort']['orderby']){ sort['orderby_as']=''; } if(form.find('.js-wpv-sort-control-orderby').data('forceorder')){ sort['order']=form.find('.js-wpv-sort-control-orderby').data('forceorder'); } break; }} self.set_sort_data(form, sort); }; self.set_sort_data_orderby_select=function(orderby_control, sort){ if(orderby_control.find('option[value="' + sort['orderby'] + '"]').length==0){ orderby_control.append($('